CAPE 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 2 1 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 2 2 1 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 2 2 1 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 2 2 1 nan nan nan 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 2 2 2 1 nan nan 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 1 nan nan nan 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 2 2 1 1 0 nan nan nan 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 nan nan nan nan 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 nan nan nan nan 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 1 1 0 0 0 nan 0 0 0 0 0 0 0 0 0 0 0 1 1 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 1 0 0 0 0 0 0 nan 0 0 nan nan nan nan 0 0 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 0 0 0 0 nan nan nan nan nan nan nan nan nan nan nan 0 nan nan nan nan 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 0 0 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 0 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan CIN -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan nan -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan nan -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 nan -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 -0 -0 -0 nan -0 -0 nan nan nan nan -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan -0 nan nan nan nan -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan -0 -0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan Wind_Speed 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 14 14 13 10 5 3 2 1 1 1 1 1 2 3 3 3 3 3 2 1 3 4 4 5 5 5 6 5 4 5 6 7 8 8 7 6 5 2 2 3 3 3 3 3 3 2 0 1 2 1 1 2 2 1 1 2 3 4 2 1 1 2 1 2 1 1 2 2 3 4 3 4 2 2 1 1 2 3 3 4 4 2 0 1 1 4 3 2 1 1 3 3 1 1 1 1 2 1 1 1 3 2 1 1 1 1 0 0 1 1 2 1 1 1 3 4 4 4 4 5 5 5 4 3 2 2 2 3 3 4 3 3 3 4 4 1 2 2 1 2 3 3 3 3 1 2 2 2 2 2 2 3 4 4 5 5 4 5 5 6 5 5 4 3 3 2 1 1 1 2 2 3 4 3 3 3 3 3 2 1 2 2 2 2 2 2 2 4 4 4 5 4 4 4 4 4 4 3 3 2 2 4 2 3 3 1 1 2 2 2 2 2 7 7 6 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 12 12 12 12 12 13 12 8 4 3 2 0 1 0 1 2 3 3 2 2 2 1 1 2 4 5 5 5 5 5 4 3 3 4 5 6 7 8 7 5 3 2 3 5 5 5 4 3 2 1 2 2 2 2 3 4 2 2 2 2 3 2 1 1 1 1 0 1 2 2 3 3 3 4 4 4 2 2 2 2 4 3 3 3 2 1 1 2 2 2 3 2 2 2 2 3 2 1 1 1 3 1 1 1 2 3 1 2 1 2 2 2 2 2 2 2 2 2 2 2 4 5 6 5 4 4 2 2 1 2 2 3 4 4 2 2 2 4 3 1 2 1 2 2 3 3 2 2 3 2 1 1 2 2 4 4 4 4 4 4 4 4 5 6 6 6 5 4 3 3 3 3 3 2 1 2 3 3 2 2 3 3 3 1 1 2 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 2 1 3 2 1 0 2 2 1 1 2 1 4 6 6 5 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 12 12 12 11 11 11 11 12 11 7 4 2 1 1 1 1 2 3 3 2 2 1 1 1 1 2 3 4 5 5 5 4 3 2 3 4 5 5 5 6 6 4 3 3 5 4 4 4 4 3 1 2 3 3 3 3 3 3 1 1 1 1 2 1 1 1 1 2 2 2 3 4 4 5 3 3 3 3 2 2 4 4 4 3 2 2 1 1 1 1 1 1 2 2 1 2 2 1 2 3 2 3 3 2 1 2 1 3 2 3 2 1 2 2 2 0 2 2 2 2 2 1 3 5 7 6 4 3 2 2 1 2 2 3 3 4 1 1 1 3 2 2 2 3 2 1 3 3 0 2 3 1 1 1 2 2 1 3 3 3 3 4 4 4 6 6 6 6 6 6 5 5 5 4 4 4 3 3 3 2 1 2 2 2 3 2 1 2 3 4 4 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 0 4 3 4 4 4 3 3 1 2 3 5 6 6 4 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 12 11 11 10 10 10 9 10 9 6 2 2 2 1 1 2 3 3 2 1 1 2 2 1 0 0 1 3 4 5 5 4 3 2 3 4 5 6 6 6 5 3 3 3 3 2 1 2 2 2 1 1 3 3 3 3 3 3 1 2 3 2 2 1 1 2 2 2 3 4 4 3 3 2 1 2 2 3 2 1 4 3 3 1 1 2 1 2 3 3 2 1 1 3 3 1 1 0 3 4 4 3 3 1 1 1 1 4 2 2 4 2 1 2 2 2 1 2 2 1 2 1 2 5 5 3 2 2 2 2 1 2 2 2 3 4 1 2 1 3 1 2 3 3 3 1 4 3 2 3 2 1 2 1 1 3 2 0 2 3 3 4 4 3 4 5 5 5 6 6 6 6 5 4 5 5 5 5 3 1 1 1 1 2 3 4 3 1 1 1 2 3 3 3 3 3 2 2 2 2 3 3 1 1 3 3 1 6 5 5 5 5 5 4 2 3 4 6 6 6 4 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 12 12 11 10 10 9 9 8 8 7 5 3 3 2 2 2 2 3 3 1 1 1 1 2 1 0 0 0 1 2 4 5 4 4 4 4 4 5 5 6 6 5 3 4 5 6 5 4 2 1 1 1 0 2 2 3 3 3 3 2 3 4 4 2 1 1 2 3 3 3 3 2 0 1 1 1 2 2 1 1 1 1 3 2 2 2 2 2 1 3 3 2 2 1 2 3 2 1 1 3 4 3 2 2 2 2 2 2 3 3 0 3 3 1 3 3 2 1 1 2 1 1 1 2 5 4 2 2 1 2 2 1 1 1 2 3 3 2 2 2 2 2 3 3 3 3 2 4 4 2 3 2 1 2 2 1 3 3 2 3 3 3 3 3 4 4 4 5 4 5 5 4 5 5 4 5 5 5 5 4 2 1 1 2 3 4 4 3 1 0 1 1 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 7 5 5 5 6 6 5 3 4 5 7 8 7 5 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 12 12 11 10 10 9 9 8 8 7 6 4 3 4 3 2 2 3 3 2 1 1 1 2 1 1 0 0 0 1 0 2 4 5 5 5 5 4 5 6 6 5 3 2 3 6 7 6 5 4 3 1 1 2 2 1 1 2 2 3 3 4 4 4 4 4 3 2 2 3 2 2 2 3 2 1 1 1 2 1 1 2 2 3 2 2 2 2 1 1 1 2 1 2 0 3 3 1 0 1 3 3 2 1 2 2 1 1 1 2 3 2 2 3 3 2 3 3 3 3 2 2 1 2 2 5 4 3 3 3 2 1 1 1 1 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 0 3 3 3 2 2 2 2 3 3 3 3 4 4 4 4 4 5 4 4 4 4 4 3 3 1 2 2 2 2 1 1 2 2 1 0 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 4 5 3 3 4 5 5 4 3 4 6 7 8 8 6 14 14 14 14 14 14 14 14 14 13 13 13 13 13 12 12 12 11 11 10 9 9 8 7 7 7 6 4 3 3 3 2 2 3 3 2 1 1 2 2 1 1 1 1 1 1 1 2 3 5 5 6 6 5 5 6 6 4 3 3 4 6 7 7 6 5 5 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 1 1 2 3 3 4 3 3 1 1 2 1 2 2 2 2 3 3 3 2 1 2 3 3 3 2 2 3 3 1 1 1 4 3 2 1 2 2 2 1 1 1 2 3 2 1 3 3 2 2 1 1 1 1 1 2 4 5 4 3 3 3 3 1 0 1 1 2 2 3 4 2 2 2 3 3 3 2 2 2 2 2 3 3 2 1 2 1 1 2 3 2 1 2 2 1 1 1 0 2 3 3 2 3 3 4 3 3 3 3 2 2 2 3 2 1 1 1 1 1 2 2 1 2 2 4 5 5 5 5 5 4 1 0 1 2 1 1 2 2 3 5 3 1 3 4 4 4 4 5 6 8 9 9 6 14 14 14 14 14 14 14 14 13 13 13 13 13 12 12 12 11 11 10 9 9 8 8 7 7 6 6 5 3 3 3 3 3 3 2 2 1 1 2 2 2 2 2 2 3 3 3 3 3 4 4 4 5 5 5 6 6 3 3 3 4 5 6 7 6 7 6 5 2 2 3 3 2 2 3 3 2 1 0 1 2 1 2 3 3 1 1 2 2 3 4 4 2 1 1 1 1 1 1 2 3 4 3 1 2 3 3 2 1 2 3 4 2 0 2 2 4 4 3 4 4 4 3 3 2 1 0 1 3 2 1 3 3 2 2 2 1 2 2 3 4 5 4 2 2 2 3 2 1 1 1 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 4 3 1 1 2 2 2 3 3 3 3 4 3 3 2 3 3 3 4 4 4 5 5 5 4 4 3 2 2 2 2 1 3 3 4 3 1 1 1 1 2 3 2 2 5 5 6 6 6 6 4 4 3 3 2 2 2 2 3 5 3 0 3 4 3 5 6 6 7 9 10 9 7 14 14 14 14 14 14 14 14 14 13 13 13 12 12 12 11 11 10 10 9 8 8 7 7 7 6 6 5 4 2 2 2 3 3 2 2 1 2 2 2 2 2 2 1 1 3 3 2 3 4 4 4 4 4 4 4 5 3 2 2 4 4 5 6 5 7 8 6 4 2 3 3 3 3 3 2 1 2 1 2 3 2 2 4 5 3 2 1 0 1 2 3 2 1 1 1 2 2 1 2 2 2 2 2 1 1 0 1 1 4 5 5 3 2 2 3 5 5 5 5 4 3 3 4 3 3 2 2 2 3 1 2 3 3 3 2 1 2 4 4 4 4 4 2 1 1 2 2 0 0 1 2 2 2 2 2 2 3 3 3 3 3 4 3 3 3 3 3 1 2 2 2 2 2 2 3 4 5 5 4 4 4 5 5 6 6 6 6 5 5 4 2 1 1 0 1 2 3 4 6 6 4 1 1 1 3 4 4 2 1 2 3 3 4 4 4 3 3 3 2 2 2 2 3 5 5 3 1 2 3 5 7 7 6 7 9 10 9 9 15 15 15 15 15 14 14 14 14 13 13 13 12 12 12 11 11 10 10 9 8 7 7 7 6 6 6 5 4 2 2 3 3 2 2 1 2 3 2 2 1 2 2 2 0 2 3 2 3 4 4 3 3 3 3 4 4 4 3 2 4 5 5 5 5 5 6 7 5 4 3 3 5 5 3 2 2 2 2 3 4 2 1 2 3 3 3 2 1 0 2 4 3 1 2 1 2 2 2 2 2 2 1 1 2 2 2 2 2 4 6 5 4 3 3 4 5 3 4 3 3 1 1 2 3 4 4 3 1 2 2 1 1 1 1 1 1 1 3 4 3 2 2 3 2 2 2 2 1 1 0 0 2 3 2 2 2 3 3 3 4 4 5 4 3 4 4 3 1 0 1 2 1 1 2 3 5 5 5 5 5 5 5 6 6 5 5 5 5 5 4 2 0 2 3 4 4 4 5 7 8 5 2 1 3 4 5 4 2 1 1 2 2 2 3 3 3 3 3 2 1 1 3 5 5 4 2 2 1 4 7 8 7 7 8 9 9 10 11 15 15 15 15 15 15 14 14 14 13 13 13 12 12 11 11 11 10 9 9 8 7 7 6 6 6 6 5 4 3 3 3 3 2 2 2 2 3 1 1 1 1 2 2 1 2 2 2 2 2 3 3 3 3 4 5 5 4 4 4 5 5 5 3 3 4 5 6 5 4 4 4 5 5 2 1 2 2 3 4 3 2 2 1 1 3 5 4 3 1 1 3 3 2 2 1 1 3 3 2 2 2 2 2 4 3 1 2 3 4 4 4 3 3 3 5 5 3 2 1 1 1 1 1 2 4 4 3 2 1 1 1 1 1 1 0 1 1 3 4 3 2 2 4 3 2 2 2 1 1 1 1 1 1 2 2 2 4 4 4 4 4 5 4 4 4 4 2 2 1 2 1 0 1 2 3 4 5 5 6 6 7 6 6 6 5 4 4 5 5 4 3 1 2 2 4 6 5 6 7 8 7 5 4 4 4 4 4 3 2 2 2 2 2 3 3 2 2 2 1 2 5 6 5 4 2 1 1 2 6 8 8 7 7 8 8 8 8 10 15 15 15 15 15 15 14 14 14 13 13 13 12 12 11 11 10 10 9 8 8 7 7 6 6 5 5 5 4 3 3 3 3 2 2 2 2 2 2 1 1 1 2 2 1 1 1 2 1 1 2 3 4 5 5 5 4 3 4 4 5 4 3 3 3 4 4 4 4 5 5 4 3 3 1 2 1 1 2 2 1 0 0 1 2 3 3 4 4 2 1 3 3 2 2 2 1 2 2 2 2 1 1 2 3 3 0 1 2 3 3 3 3 2 3 5 5 3 0 0 1 2 2 1 2 3 3 3 3 3 2 2 2 1 1 2 2 2 3 4 4 3 3 4 5 3 1 1 1 1 1 1 1 1 1 2 3 5 5 4 3 3 3 3 4 4 3 2 1 2 2 1 2 2 2 3 3 3 3 6 7 7 6 6 5 5 5 5 6 6 5 3 2 2 0 3 6 7 6 6 6 6 7 7 6 4 3 1 0 2 3 4 4 4 5 5 4 4 4 4 6 8 6 4 3 3 3 2 5 9 10 8 6 6 6 5 5 5 7 15 15 15 15 15 15 14 14 14 14 13 13 12 12 11 11 10 10 9 8 7 7 6 6 5 5 5 5 4 3 3 3 3 3 3 2 2 1 2 2 2 2 2 1 1 1 2 2 1 1 1 3 4 5 5 5 5 4 4 4 4 3 2 3 3 3 2 2 3 4 3 3 4 3 1 2 3 3 2 1 0 1 1 2 3 2 2 2 3 3 2 2 3 2 1 2 1 1 1 1 3 2 2 3 2 2 1 1 3 4 2 1 2 2 3 5 4 1 1 1 1 2 3 2 2 2 2 2 3 3 4 3 1 1 2 3 2 2 2 3 5 4 3 4 6 4 2 1 1 1 2 2 2 2 1 1 3 4 4 4 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 1 3 5 7 7 7 5 3 3 4 5 8 8 6 4 1 1 2 3 6 8 8 6 5 4 5 7 7 4 2 1 2 3 5 5 5 5 6 6 6 6 7 8 9 8 4 4 5 4 2 1 6 9 9 7 5 4 2 2 2 2 4 15 15 15 15 15 14 14 14 14 14 13 13 12 12 11 11 10 9 9 8 7 7 6 6 5 5 5 4 4 3 2 2 2 3 3 2 2 2 2 2 2 2 1 1 1 2 2 2 2 3 2 2 2 3 3 3 4 4 5 5 4 4 3 3 4 2 1 1 1 1 1 4 5 3 1 2 3 4 4 2 1 1 1 2 3 3 3 3 2 4 3 2 2 2 2 2 1 1 1 2 3 4 3 3 2 2 3 3 3 3 2 2 3 1 2 2 1 1 2 3 2 2 4 4 3 3 2 1 3 3 4 2 2 3 3 2 2 2 2 3 4 4 3 4 6 4 3 2 2 3 3 2 1 2 2 1 2 3 4 3 2 1 1 2 3 3 2 1 1 2 1 2 4 3 2 2 3 1 4 5 6 6 7 6 5 4 5 7 9 10 9 6 4 2 2 3 5 7 7 6 5 5 8 9 7 5 3 4 4 4 4 4 4 5 6 6 6 8 10 12 12 8 4 4 4 2 1 4 7 10 10 8 3 2 2 3 3 0 5 15 15 15 15 15 14 14 14 14 13 13 13 13 12 11 11 10 9 8 8 7 7 6 5 5 5 4 4 3 2 2 2 2 3 3 2 2 2 2 2 2 2 1 1 1 1 2 1 2 3 3 4 3 2 1 1 2 4 5 5 3 3 3 3 3 2 1 2 2 2 2 4 5 2 1 1 2 4 3 2 2 2 1 2 4 4 3 2 2 5 4 3 2 1 1 1 1 2 2 2 3 3 1 3 3 4 5 5 4 2 2 2 3 3 3 3 4 4 3 3 3 1 3 4 4 3 2 2 2 3 3 1 4 4 3 2 1 1 1 1 2 3 4 5 6 5 3 3 3 4 3 1 0 1 2 3 3 3 3 2 1 1 1 3 3 3 3 3 2 2 1 2 4 4 1 2 3 1 4 5 5 4 5 6 6 6 7 8 10 11 10 7 5 4 3 4 7 8 8 6 5 6 8 8 7 6 7 7 6 5 4 5 5 6 7 7 8 9 11 12 12 8 5 4 3 3 4 7 9 10 11 10 6 3 1 0 1 4 9 15 15 15 15 14 14 14 14 14 13 13 13 13 12 11 11 10 9 8 7 7 6 6 5 5 4 4 4 3 2 2 2 3 3 3 2 1 1 2 3 2 1 1 1 1 1 1 1 2 1 2 4 4 2 2 2 2 4 4 2 1 2 1 3 4 4 3 3 4 3 3 4 4 2 0 1 4 4 3 2 2 2 2 2 3 3 1 1 1 1 3 3 3 3 3 3 3 3 3 2 2 3 2 2 4 5 5 4 4 3 2 0 2 3 3 3 3 4 4 4 2 1 2 2 2 3 2 2 3 2 1 1 4 3 2 2 2 2 1 1 1 2 4 4 5 4 2 3 4 4 3 1 1 2 3 3 3 3 3 2 1 2 2 3 3 2 3 3 3 2 2 2 3 3 1 2 2 1 4 6 5 5 5 6 6 7 8 8 10 11 10 7 5 4 5 5 5 6 6 5 6 6 7 7 7 8 10 10 8 6 6 6 7 7 9 10 10 10 10 11 10 8 6 6 5 4 6 9 11 12 13 14 12 10 9 8 8 8 12 15 15 15 14 14 14 14 14 13 13 13 13 13 12 11 10 9 9 8 7 7 6 5 5 4 4 4 3 2 2 2 3 3 3 3 2 1 1 2 2 2 2 1 1 1 1 0 1 1 1 3 4 2 1 2 3 3 4 4 3 3 2 1 2 3 4 5 5 5 4 3 3 4 2 1 1 4 4 2 1 2 2 2 2 2 1 1 3 2 2 1 2 4 5 5 5 4 4 3 3 2 3 3 1 3 4 4 4 4 4 2 1 1 2 2 2 2 3 4 3 1 1 1 0 1 2 3 2 3 3 1 1 2 2 1 0 1 3 2 1 1 1 2 3 4 3 2 4 4 4 3 3 2 2 3 4 5 5 4 2 2 2 3 3 1 1 2 3 3 2 1 2 3 3 2 2 2 2 4 5 4 4 5 6 7 7 8 9 10 10 8 6 3 3 6 5 3 2 2 4 5 6 7 9 10 11 12 11 9 7 7 8 9 10 11 11 11 11 11 11 10 9 7 7 7 7 9 11 13 14 13 13 13 13 13 13 12 11 13 15 15 14 14 14 14 14 13 13 13 13 13 13 12 11 10 10 9 8 7 7 6 5 5 4 3 3 2 2 3 3 3 3 3 3 3 1 1 1 2 2 2 2 1 1 1 1 1 0 2 4 4 2 1 2 2 3 3 4 3 2 1 2 2 3 4 5 6 6 5 3 3 3 2 0 1 3 3 2 1 1 2 2 2 1 1 2 3 3 3 2 1 2 4 4 5 5 4 3 3 3 2 3 2 1 2 3 4 4 4 2 2 2 1 1 1 2 3 4 3 2 1 1 1 1 2 2 2 2 3 3 2 2 2 2 2 2 1 2 1 2 2 1 2 3 3 1 4 5 5 5 4 3 2 3 4 5 5 4 3 2 2 2 1 0 1 2 2 2 1 1 2 3 3 2 1 2 1 2 3 4 4 5 7 7 8 9 10 10 8 6 4 3 4 6 5 2 2 2 4 6 6 8 10 12 13 11 10 8 7 8 9 11 11 11 11 11 12 12 12 9 7 6 7 8 10 12 14 15 15 14 13 13 13 13 14 14 14 14 15 14 14 14 14 13 13 13 13 13 13 12 12 12 11 10 10 9 8 7 6 5 5 4 4 3 3 2 3 3 2 2 2 2 3 3 2 0 1 1 2 2 2 2 1 1 0 1 1 2 3 3 3 3 3 2 2 2 2 1 1 2 2 2 2 3 4 5 6 5 3 2 3 3 1 2 3 3 2 1 1 3 3 2 1 2 3 4 3 1 1 1 1 2 3 4 4 4 2 2 2 1 2 3 2 1 3 3 4 3 2 2 2 1 1 2 2 2 3 4 3 1 1 2 2 3 2 1 1 3 3 3 3 3 4 3 2 1 2 3 2 2 2 1 1 0 1 1 2 3 3 3 3 3 3 3 4 4 4 3 2 1 1 2 1 1 1 2 2 1 2 2 2 2 1 1 1 1 1 3 4 4 6 7 7 8 9 10 8 5 2 1 1 3 4 3 2 2 3 6 8 8 9 11 12 11 9 7 7 7 9 10 11 11 11 10 9 9 10 10 8 7 7 8 9 11 13 14 15 15 13 13 12 13 13 14 15 15 15 14 14 14 14 13 13 13 13 13 13 13 12 12 12 11 11 10 9 8 7 6 6 5 4 4 3 2 2 3 3 3 3 3 3 2 2 2 2 1 1 1 1 1 2 1 1 2 2 2 3 2 3 4 3 2 1 1 2 1 0 2 2 3 2 3 4 5 6 5 3 2 2 2 3 2 3 3 1 2 2 2 3 3 3 2 1 2 3 3 3 2 0 1 2 2 2 3 3 2 4 3 2 2 4 3 3 3 4 4 3 2 1 2 1 2 2 3 2 3 3 3 1 2 4 4 4 4 4 3 3 2 1 2 3 4 3 3 2 1 2 2 2 2 3 2 1 2 2 2 2 2 3 4 4 3 3 3 4 3 3 1 0 1 1 2 1 1 2 3 1 3 2 2 3 2 1 1 2 1 3 4 4 5 6 7 6 6 5 3 1 2 2 1 2 2 1 1 2 3 6 9 9 9 11 11 10 8 7 7 7 8 8 9 9 9 9 9 8 7 8 8 7 7 7 8 9 11 12 13 12 12 12 12 12 13 13 14 15 14 14 14 14 13 13 13 13 13 13 13 13 13 12 12 12 11 10 9 8 7 6 5 4 4 3 3 2 3 3 3 3 3 3 3 2 1 2 3 3 1 1 2 2 3 2 1 1 0 2 3 4 4 4 3 1 0 1 0 1 2 2 2 2 2 3 4 5 5 3 1 1 1 2 3 2 1 3 1 2 3 2 2 3 5 4 2 1 2 2 3 2 1 0 2 3 1 1 2 3 4 4 3 4 5 4 2 3 4 4 3 2 1 1 1 1 2 3 2 2 3 2 2 4 6 6 6 5 5 4 5 4 3 2 3 3 3 3 3 2 1 2 2 1 2 2 1 2 3 4 4 3 2 2 3 4 3 3 3 3 1 0 1 1 1 1 2 1 1 2 1 3 3 1 2 2 0 0 2 1 2 4 4 4 6 6 5 5 4 3 2 2 3 2 1 1 1 0 2 4 6 9 10 11 11 12 11 8 6 6 5 6 6 6 7 7 7 8 7 6 6 8 8 6 4 4 6 8 9 9 10 11 11 11 11 11 11 12 12 12 14 13 13 13 13 13 12 12 12 13 13 13 12 12 12 11 10 9 8 7 6 5 4 4 3 2 2 3 3 3 2 3 3 2 1 1 1 2 3 2 2 2 2 3 4 4 4 4 3 3 3 4 4 3 1 1 1 1 1 1 1 2 2 3 4 4 4 3 2 1 2 2 3 4 2 1 2 1 2 4 3 2 2 3 4 4 4 2 0 1 1 1 1 1 3 3 2 0 2 3 3 3 4 4 2 2 4 4 4 3 2 1 1 1 1 2 3 2 2 3 3 3 4 5 6 6 5 5 5 5 6 6 5 5 4 5 5 4 3 2 1 3 3 2 2 1 2 4 3 2 2 3 2 2 4 4 5 5 3 1 0 0 1 1 1 2 2 1 3 1 2 3 1 2 2 2 1 2 2 2 4 5 4 5 5 4 4 4 4 3 2 2 1 1 1 1 1 3 5 7 9 12 13 14 13 12 9 6 4 4 4 4 5 7 7 6 5 4 4 6 9 10 7 4 4 6 8 9 8 9 9 8 7 7 8 8 8 9 9 13 13 13 13 13 12 12 12 12 13 13 13 13 12 12 11 10 9 8 7 6 5 4 4 3 2 1 2 3 3 3 2 2 2 0 1 1 1 1 1 1 1 1 1 3 4 5 5 5 5 4 4 4 3 2 3 2 2 2 1 2 2 3 3 3 4 3 2 2 2 3 3 3 4 3 0 2 1 1 3 2 1 1 2 2 3 4 3 2 2 1 2 2 2 3 4 6 4 1 2 2 1 3 3 2 4 4 4 3 2 1 0 1 1 2 3 3 2 2 2 2 2 4 5 5 5 5 5 5 6 6 6 6 6 6 6 7 6 5 3 1 3 4 3 3 3 1 3 3 3 2 4 3 0 3 3 4 4 3 2 2 2 2 1 1 1 2 2 3 1 3 2 0 2 3 2 2 3 2 3 5 5 5 5 4 3 2 3 4 4 3 2 1 1 2 1 1 3 4 6 8 11 14 16 15 13 10 8 6 5 4 3 5 7 8 6 4 4 5 8 9 8 6 6 6 7 8 8 8 7 5 4 3 4 4 5 5 6 6 13 13 13 12 12 12 13 13 13 13 13 13 13 13 12 12 11 10 8 7 6 5 4 4 3 2 1 2 3 3 2 2 2 2 1 1 1 0 1 1 1 1 1 1 1 3 4 4 4 6 6 5 4 2 3 3 3 3 2 2 2 2 2 2 1 3 4 3 3 2 3 3 3 3 2 1 2 1 1 3 2 1 0 1 1 3 4 3 2 2 0 2 1 2 3 4 5 4 3 2 2 2 3 3 4 4 4 4 3 2 1 1 1 1 2 3 3 2 2 1 1 3 4 5 5 5 6 6 6 7 7 6 6 5 5 6 7 6 5 3 3 3 4 4 3 3 3 1 3 3 3 3 3 1 1 1 2 2 2 2 2 1 0 0 1 1 2 2 2 1 2 2 1 3 3 3 2 2 1 2 4 5 5 4 4 2 1 2 4 5 4 4 3 2 3 3 2 2 3 5 8 11 13 14 14 13 10 8 6 5 5 5 5 6 8 6 5 6 7 7 6 4 4 6 8 9 8 8 7 6 4 3 3 4 4 5 6 6 6 13 13 13 12 12 12 12 13 13 13 13 13 13 13 13 12 11 10 8 7 6 5 4 3 3 2 2 2 3 3 2 1 1 2 2 1 1 1 1 1 1 1 1 0 1 2 3 3 3 5 6 4 1 2 3 2 3 3 2 2 1 1 1 1 1 2 4 4 3 1 1 2 0 1 2 1 3 1 1 2 0 2 3 3 3 3 3 2 3 3 1 2 2 1 2 3 3 3 3 3 4 4 4 4 4 4 4 3 3 3 2 1 2 2 2 3 2 1 0 1 3 4 5 5 5 5 6 5 6 6 6 5 5 4 5 6 6 6 5 4 3 3 3 3 2 2 3 2 2 3 2 2 3 2 1 1 1 0 1 0 1 1 2 1 3 2 1 1 2 2 1 1 2 2 2 2 2 2 1 1 3 5 5 5 4 3 1 0 3 4 5 5 5 4 5 5 5 5 5 6 9 10 11 11 11 10 8 6 6 6 6 7 7 7 6 5 4 4 5 4 3 2 4 6 8 8 7 6 5 5 4 3 3 4 5 6 6 6 5 13 12 12 12 12 13 13 13 13 13 13 14 14 14 13 12 11 10 8 7 6 4 4 3 3 3 2 2 3 2 2 1 1 2 2 1 1 1 1 2 1 1 1 1 1 1 4 4 4 4 5 4 0 2 2 1 2 1 0 1 1 1 2 2 2 4 4 4 2 1 2 3 2 2 2 1 2 2 2 2 2 3 4 3 3 2 1 2 4 5 3 2 2 0 1 1 1 2 3 4 4 5 5 5 4 3 3 3 3 4 2 0 2 2 3 3 1 1 3 4 4 4 4 4 4 5 5 5 5 5 5 4 4 4 4 5 5 5 4 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 1 1 1 2 2 1 0 2 1 1 1 1 2 1 0 1 1 1 2 1 3 2 2 3 5 5 5 4 3 2 0 2 3 5 6 6 5 5 6 7 7 7 6 7 7 7 8 8 8 7 6 6 6 5 5 4 3 2 2 2 3 3 3 3 2 3 5 7 7 7 4 3 3 3 3 3 4 6 6 6 5 3 12 12 12 12 12 13 13 13 13 14 14 14 14 14 13 12 11 10 8 6 5 4 3 3 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 2 2 2 2 2 2 2 3 4 3 4 5 4 1 1 1 1 2 1 1 1 2 3 3 3 4 4 4 2 1 3 3 3 2 2 3 2 2 2 1 3 3 3 3 3 2 1 2 3 4 5 3 2 3 2 1 1 1 2 2 3 3 4 4 4 4 4 3 3 3 3 4 2 2 3 2 2 1 2 4 5 6 5 5 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 4 4 3 1 1 2 1 1 2 2 1 1 2 2 1 2 2 2 2 1 0 1 1 2 1 2 3 4 5 4 4 3 3 2 2 3 4 4 5 5 5 6 6 6 5 5 5 4 5 6 5 6 6 6 4 2 2 2 3 2 2 2 4 4 5 5 4 3 4 6 6 6 5 4 2 2 4 4 5 6 7 6 5 4 3 12 12 12 12 13 13 13 13 14 14 14 14 14 14 13 12 11 10 8 6 5 4 3 2 2 2 2 2 3 2 2 2 2 2 1 1 0 0 1 2 2 2 1 1 2 2 2 3 3 4 5 5 2 2 1 2 2 2 2 2 2 3 3 3 3 4 4 2 3 3 2 1 1 0 2 2 1 0 0 1 1 1 1 1 1 0 1 3 4 5 3 1 2 3 1 1 2 2 2 2 2 3 3 3 4 5 4 3 3 3 3 2 2 2 0 1 2 3 4 5 6 6 5 5 4 4 5 6 5 5 4 4 4 3 3 3 2 2 1 1 1 2 2 2 2 2 2 1 1 1 1 1 1 2 4 4 3 3 3 2 1 0 1 1 1 1 1 0 2 3 3 2 3 1 1 1 1 2 1 1 3 4 5 5 4 4 5 4 4 4 3 2 2 4 5 5 5 5 4 4 4 4 5 5 5 5 6 6 4 2 3 4 4 4 3 3 3 5 6 6 5 5 6 6 5 4 5 4 3 4 6 6 6 8 8 7 5 5 5 12 12 12 12 13 13 13 14 14 14 14 14 13 13 13 12 11 10 8 6 5 3 2 2 1 2 3 3 3 3 2 2 2 2 2 1 0 0 1 2 2 2 2 2 1 1 2 2 3 3 5 5 3 2 3 2 2 2 1 2 2 3 3 3 4 4 3 2 3 2 1 1 1 1 1 2 2 1 1 2 1 1 1 1 1 1 1 2 3 4 4 2 2 3 2 1 2 2 3 2 2 2 2 2 4 5 4 4 3 3 2 1 2 2 2 3 3 4 4 4 4 4 4 4 5 5 5 6 5 4 4 4 3 2 2 2 1 1 1 1 1 1 2 2 2 2 1 1 1 1 1 0 0 1 2 4 4 4 4 3 2 2 1 1 0 1 1 1 2 3 3 3 3 1 1 1 1 2 1 1 3 4 5 5 4 4 5 5 5 4 2 3 4 4 4 4 4 4 4 4 4 4 3 4 5 6 7 7 5 5 7 7 7 7 6 4 3 4 6 6 6 7 7 7 5 5 5 5 6 6 6 5 6 6 7 6 5 6 6 12 12 12 12 13 13 13 14 14 13 13 13 13 13 13 12 11 10 9 7 5 4 3 1 1 2 3 3 3 2 2 2 3 3 2 2 2 1 2 2 2 3 3 3 2 2 2 2 3 3 4 5 4 2 3 3 2 2 1 1 3 3 3 3 3 4 2 1 1 1 3 2 1 1 0 1 2 2 1 1 1 2 2 2 2 2 2 1 1 3 4 4 3 2 2 1 1 0 1 2 2 0 1 2 3 4 4 4 4 4 3 2 1 2 3 4 5 5 4 4 3 3 3 3 3 3 3 4 4 3 3 3 2 1 1 1 1 1 1 1 1 1 2 2 2 2 1 0 0 1 1 2 2 2 2 2 3 4 4 3 3 3 2 1 1 1 1 2 2 2 2 2 2 1 1 1 1 2 1 1 3 4 6 6 4 4 4 5 4 3 3 3 4 3 3 4 4 4 4 4 5 4 2 3 4 6 6 6 6 6 7 7 7 9 9 6 5 6 7 7 7 7 7 6 5 6 7 8 7 7 5 3 3 4 5 6 6 6 6 12 12 12 13 13 13 13 13 14 13 13 13 13 13 13 12 12 11 10 9 7 5 3 2 1 3 4 3 3 2 2 2 3 3 3 2 1 2 2 2 2 1 2 2 2 2 2 2 2 3 4 6 5 2 2 3 2 2 1 2 3 3 1 1 1 2 2 1 1 1 4 3 0 1 1 1 2 3 2 1 1 1 1 1 1 2 2 1 1 2 3 4 4 3 2 2 2 2 2 2 2 1 1 3 3 3 3 3 3 4 4 3 2 2 3 4 5 5 4 3 2 2 1 1 1 2 2 1 1 1 1 1 1 2 1 1 0 0 0 1 1 1 1 1 2 2 1 1 0 1 2 3 4 4 3 2 1 1 2 3 5 4 3 1 1 1 1 2 2 2 1 2 1 1 1 1 2 2 1 1 2 4 6 6 4 4 4 5 4 4 3 3 4 3 3 4 4 4 5 5 4 3 2 2 3 4 5 5 5 5 5 6 7 8 8 6 5 6 7 7 6 6 6 6 5 6 7 7 6 6 6 6 5 5 6 6 6 6 6 11 12 12 12 13 13 13 13 13 13 13 13 13 13 13 12 12 11 11 10 8 7 5 2 1 3 3 3 2 2 1 1 2 4 3 1 1 2 2 1 1 1 2 2 2 2 2 3 3 3 4 5 5 2 1 2 2 2 2 2 3 3 3 2 2 2 2 2 0 1 2 2 1 1 1 0 2 2 2 2 2 2 2 2 2 2 1 1 2 2 3 3 5 4 3 2 2 2 3 3 2 2 1 2 3 3 3 2 2 4 4 2 1 2 3 3 3 2 2 2 1 1 1 2 2 1 1 1 1 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 2 4 4 4 2 1 1 0 2 3 4 4 3 3 2 2 3 2 2 1 2 1 0 1 0 1 2 1 1 1 3 5 4 3 4 5 6 5 4 3 4 5 4 4 3 4 4 5 5 4 3 2 2 2 2 3 4 3 3 4 5 6 6 6 5 5 5 6 6 7 8 8 8 7 6 6 6 6 5 5 5 6 6 6 7 6 6 6 11 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 11 10 9 7 4 3 3 3 3 2 2 1 2 3 4 4 1 1 1 1 1 1 2 2 3 2 2 2 3 3 3 3 4 4 2 0 2 3 3 3 3 3 3 1 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 1 2 2 2 3 3 3 3 3 2 2 2 3 4 4 3 2 1 2 3 3 2 2 1 1 3 3 2 2 2 3 2 1 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 4 4 4 3 3 4 4 4 4 3 3 2 2 2 2 2 1 1 0 1 2 3 4 4 3 1 1 1 1 1 2 3 4 4 4 3 2 1 1 2 2 1 0 1 0 1 1 1 1 1 3 3 1 1 3 4 5 4 3 4 5 5 5 3 3 3 5 5 4 3 3 2 2 2 2 2 2 2 2 3 4 4 4 4 3 2 3 5 7 7 8 8 8 8 8 7 7 6 5 5 4 5 6 6 6 7 7 7 11 12 12 12 13 13 13 13 13 13 13 14 13 13 13 13 13 13 13 12 12 11 10 8 6 5 4 3 2 2 2 2 3 4 4 2 0 1 1 1 1 2 2 3 3 2 2 2 2 3 3 4 4 3 1 1 2 2 2 2 3 3 2 2 2 1 1 1 2 1 1 1 2 3 2 3 3 3 2 0 1 2 2 3 3 3 2 1 1 2 2 2 2 2 2 3 2 0 2 3 3 3 2 1 1 2 2 1 1 3 3 2 3 4 3 2 2 2 3 4 4 2 2 2 3 4 3 2 2 4 4 3 2 2 2 2 3 3 4 4 3 3 2 2 2 2 2 2 2 3 3 3 4 4 4 4 2 2 2 1 1 1 3 4 4 3 2 1 1 2 3 2 0 1 0 1 1 1 0 1 1 2 2 1 2 3 3 2 2 2 2 5 5 5 4 3 3 3 3 3 3 3 4 2 2 2 2 2 2 3 4 3 3 3 3 3 2 4 6 7 8 7 7 7 8 9 9 8 7 5 4 4 5 6 7 7 7 7 7 11 12 12 12 13 13 13 13 13 14 14 14 14 13 13 13 13 13 13 13 13 12 12 11 9 8 6 4 3 3 3 3 3 3 3 2 1 1 1 0 1 1 2 2 3 2 2 2 2 2 3 4 5 4 2 1 0 1 1 2 3 3 1 1 2 0 0 1 0 0 1 1 2 3 4 4 4 3 2 1 2 2 2 2 2 2 2 1 0 1 1 2 2 2 1 2 4 3 1 1 2 2 2 1 1 1 2 3 4 4 3 3 3 3 2 1 1 2 2 2 2 3 3 4 5 4 2 1 1 3 3 3 2 2 1 0 1 2 3 3 3 2 3 3 4 3 3 3 4 4 5 4 3 4 4 4 2 2 2 2 2 1 1 2 3 3 2 2 2 2 2 1 2 1 1 2 1 1 1 1 0 2 2 2 2 2 3 1 2 1 2 5 6 5 5 4 5 6 5 4 4 4 4 3 2 1 1 1 2 2 2 2 2 3 3 4 4 6 6 6 6 6 6 6 7 7 8 8 6 5 4 3 4 6 7 7 7 8 7 11 12 12 12 13 13 13 13 14 14 14 14 14 14 14 13 13 14 14 14 14 14 13 13 12 11 9 7 5 4 4 4 4 4 3 2 1 0 1 1 1 2 2 2 2 2 2 2 2 2 3 4 5 3 1 1 1 1 2 3 3 4 2 1 1 1 2 2 2 2 2 3 3 3 3 4 4 3 1 1 2 2 2 2 2 2 2 2 1 1 1 2 2 2 1 1 2 2 2 1 1 1 1 2 2 1 2 3 4 4 3 3 3 2 1 0 1 1 1 2 3 4 5 5 4 3 1 0 0 1 2 3 3 4 4 3 3 3 4 4 4 3 3 4 4 3 2 3 4 4 4 3 3 3 3 3 1 1 1 1 1 1 1 1 2 4 4 4 3 3 2 2 2 2 2 1 2 2 1 1 1 2 3 2 2 2 3 1 2 1 3 6 6 6 7 9 10 10 8 6 6 5 4 3 2 1 1 1 1 1 2 3 3 4 5 4 3 4 6 6 5 4 4 4 4 4 5 5 5 4 4 3 4 6 7 7 7 7 7 11 12 12 12 13 13 13 13 13 14 14 14 14 14 14 14 13 14 14 14 14 15 15 15 14 13 12 10 7 4 4 4 5 4 3 2 1 1 1 1 1 2 2 2 2 2 2 2 2 2 3 3 4 2 1 1 1 1 2 2 3 4 3 2 3 3 3 3 3 3 3 3 3 2 2 3 4 4 2 1 1 2 2 2 2 2 3 3 2 1 1 3 4 3 1 1 0 2 2 2 2 1 2 2 2 1 1 2 3 4 4 3 2 2 1 0 1 1 2 3 4 4 3 3 3 3 2 2 1 2 2 3 3 4 4 4 3 3 4 4 3 3 3 4 4 3 2 3 4 3 3 2 1 1 1 1 1 1 1 2 2 2 1 1 1 3 5 5 4 3 3 2 2 2 2 0 2 2 1 2 2 1 2 3 2 2 1 1 2 3 6 8 8 8 9 11 11 10 7 6 6 4 4 3 2 1 1 2 2 2 2 2 1 1 2 2 1 1 5 6 6 4 4 3 3 3 4 5 5 6 5 4 5 5 5 6 6 6 6 11 12 12 12 13 13 13 13 13 13 13 14 13 13 14 13 13 13 14 14 15 15 15 16 16 15 14 12 9 6 5 5 5 4 3 2 2 1 1 1 1 1 2 3 3 3 2 2 2 2 3 4 4 3 0 1 1 1 1 1 2 4 5 3 3 2 2 1 1 2 3 3 2 2 1 2 3 4 2 1 1 2 3 3 2 3 4 4 3 2 3 4 4 3 1 0 1 1 1 2 2 2 2 2 2 2 2 3 4 4 4 2 2 1 1 1 2 2 3 4 3 2 2 2 2 2 2 2 2 2 2 2 1 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 4 4 3 3 2 2 1 0 1 2 3 4 3 3 1 1 1 2 4 5 4 4 3 3 1 1 2 3 1 2 1 1 2 2 2 2 0 0 0 2 4 6 7 7 7 7 7 8 8 7 6 4 3 2 0 2 4 4 3 4 5 5 5 5 5 4 4 4 4 3 2 5 7 5 4 4 4 4 4 5 6 6 5 5 4 4 4 5 5 6 5 11 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 14 14 15 15 15 16 16 15 14 12 9 7 6 6 5 3 2 2 2 2 2 2 1 1 2 3 3 3 2 1 1 2 3 5 5 2 1 1 1 1 1 2 4 4 1 1 2 2 2 3 3 3 3 3 1 0 1 2 4 3 2 2 2 2 2 1 2 4 4 3 3 3 3 1 1 1 1 1 1 1 2 2 3 3 2 3 3 3 4 4 3 2 1 1 1 1 1 2 2 3 3 3 2 2 2 2 2 1 0 1 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 4 4 4 4 3 4 3 3 2 1 0 2 2 3 3 2 2 1 1 2 3 4 4 4 3 2 1 2 2 3 2 1 2 1 1 2 1 1 0 1 2 3 4 5 6 6 5 4 5 5 5 5 4 3 2 3 4 5 5 4 3 3 3 4 5 6 6 5 5 5 5 4 1 4 8 7 5 4 4 4 3 4 5 5 5 4 3 3 3 4 5 5 5 11 12 12 12 12 12 12 12 12 13 13 12 13 13 13 13 13 13 13 13 13 13 14 15 15 15 15 14 13 10 8 7 6 5 4 3 3 3 3 3 2 1 2 2 2 2 3 3 2 1 2 3 4 5 5 2 1 1 1 0 2 3 2 3 5 5 4 4 4 3 3 3 3 2 1 1 2 3 4 3 2 2 1 1 1 2 3 3 2 1 2 2 1 1 2 1 2 1 1 2 3 3 4 4 3 4 4 4 4 2 1 1 0 1 2 2 3 3 3 2 2 2 2 2 2 2 2 1 1 1 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 4 3 2 2 3 2 2 2 3 3 1 0 1 1 1 1 1 1 1 2 2 3 4 4 4 4 3 3 2 3 4 1 2 2 1 2 2 2 1 0 3 4 5 5 5 5 4 3 4 4 5 4 4 4 5 7 6 6 5 5 4 2 1 2 3 3 3 4 4 3 3 4 2 2 6 7 5 4 3 3 3 3 4 4 3 3 2 2 3 4 5 5 5 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 12 12 12 12 13 13 14 14 13 11 9 7 6 5 5 5 4 4 4 4 3 3 2 1 1 2 2 3 3 3 2 2 3 3 5 5 4 1 1 2 1 1 3 4 5 7 6 4 4 4 4 3 3 2 2 1 1 2 3 4 3 2 2 1 1 2 2 1 1 1 1 2 2 2 1 1 1 1 1 1 2 3 3 3 3 3 3 3 3 3 2 1 0 0 2 3 3 3 3 3 2 1 1 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 1 0 1 2 2 3 3 3 2 2 2 1 2 2 3 3 3 2 1 0 0 0 1 1 2 2 2 2 2 3 4 5 4 3 2 3 4 2 2 3 1 2 2 2 2 1 1 3 4 4 4 5 4 4 3 4 4 3 3 3 4 6 6 5 5 5 4 2 2 2 3 3 4 4 4 3 3 5 3 1 7 7 6 4 3 2 3 4 5 5 4 3 3 3 4 4 4 4 4 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 13 13 12 11 11 11 10 11 11 11 11 10 8 6 5 5 5 5 4 4 4 4 4 3 1 0 1 1 2 3 3 3 3 3 3 3 4 6 5 4 2 2 2 3 4 5 5 5 5 6 6 5 4 3 3 1 1 1 2 2 3 4 4 3 2 1 1 0 1 1 0 1 1 2 2 2 2 2 2 2 1 1 2 3 4 4 3 3 3 3 3 3 2 1 0 1 3 4 4 3 2 3 3 2 1 2 3 2 2 2 2 2 2 2 2 2 0 1 2 2 1 2 2 2 2 2 3 3 2 2 3 2 2 2 2 4 3 2 2 3 3 2 1 1 1 1 2 3 4 4 4 3 3 3 4 4 4 4 4 4 2 2 2 2 2 2 2 2 1 1 2 3 4 3 3 3 4 4 4 4 3 2 2 4 5 5 4 4 4 3 2 2 2 3 4 5 5 5 4 4 5 4 1 6 8 7 5 4 4 4 5 5 5 5 4 4 3 4 4 4 4 3 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 10 9 9 8 9 8 7 7 7 6 5 4 4 4 3 4 4 4 3 1 0 1 0 2 3 3 3 3 3 3 3 4 5 6 5 3 1 3 4 4 5 4 3 4 5 6 6 5 4 2 1 1 2 2 3 3 3 4 4 3 3 2 2 1 1 1 1 0 1 2 2 2 2 3 2 1 2 3 3 4 3 3 3 2 2 2 2 2 1 1 2 3 4 4 3 3 3 3 2 2 2 2 2 2 2 2 2 2 1 0 2 1 1 2 1 1 2 2 2 2 3 3 1 1 2 3 2 2 2 3 5 3 2 3 5 4 3 2 2 2 2 2 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 1 1 2 2 1 1 1 1 2 3 3 3 2 2 4 5 6 5 3 2 3 5 5 4 4 3 2 2 1 1 1 2 4 5 6 5 4 5 5 3 3 6 7 6 4 5 4 4 5 5 5 5 5 4 3 4 4 4 4 3 10 10 10 11 11 11 11 12 12 11 11 11 11 11 11 11 12 12 12 12 12 11 11 10 9 9 8 7 5 4 4 4 4 3 3 3 4 4 5 5 4 2 2 1 2 2 3 3 3 3 3 3 2 2 3 4 3 2 2 3 3 3 3 3 3 3 4 5 5 4 3 3 2 1 0 1 2 2 3 3 3 3 3 3 2 2 2 2 1 1 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 1 2 3 4 4 4 3 3 3 2 1 1 2 2 2 2 2 2 2 2 1 1 1 1 2 1 1 3 2 2 2 2 1 1 2 2 1 2 4 3 1 3 4 2 2 4 5 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 3 3 1 1 1 1 1 1 1 2 2 1 2 2 3 4 2 2 3 5 7 6 4 3 4 5 5 5 4 4 3 2 1 1 2 2 3 5 5 5 5 5 4 4 6 8 7 5 4 4 4 4 4 5 5 4 4 4 3 3 3 3 3 2 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 9 8 7 5 4 4 4 2 2 3 4 4 5 6 5 4 3 2 2 2 3 3 3 3 3 2 2 2 3 5 3 2 3 3 2 2 3 4 4 3 3 4 4 3 3 3 3 2 2 2 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 1 0 1 3 4 4 3 3 2 2 1 2 4 4 4 3 3 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 2 1 1 1 1 2 2 1 1 1 1 2 2 0 2 4 3 1 2 3 1 1 2 3 4 3 3 4 5 4 4 5 5 5 5 4 4 3 3 3 3 3 3 3 2 1 2 3 3 2 2 2 2 1 1 1 1 3 4 3 2 2 4 6 6 5 4 4 5 6 5 5 4 3 2 2 3 3 3 3 4 5 5 5 5 4 7 9 8 5 2 2 4 4 4 5 5 5 4 4 3 2 1 2 2 2 2 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 9 8 6 4 4 4 3 2 3 4 3 3 4 5 4 3 2 1 1 2 3 3 3 3 2 2 3 4 4 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 1 2 2 2 2 2 2 3 2 2 1 0 0 1 2 2 2 2 2 2 2 1 2 3 4 4 4 3 3 3 2 3 4 4 3 3 3 3 3 3 2 2 2 2 2 2 2 2 1 1 1 1 1 1 0 1 1 1 1 1 1 2 2 1 1 2 3 3 1 2 2 2 1 0 2 3 3 3 3 3 4 4 4 5 5 4 4 3 2 1 1 1 1 2 3 1 1 3 5 6 6 4 3 3 2 1 0 1 2 3 4 3 3 3 3 4 6 5 5 5 5 5 4 3 3 3 2 2 3 3 3 3 4 5 6 5 4 5 7 8 7 4 0 2 4 5 5 4 4 4 3 3 2 0 1 1 1 1 1 9 9 9 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 9 8 6 4 4 4 3 3 3 4 3 3 4 4 4 3 2 1 1 2 3 3 3 4 3 3 3 4 4 2 1 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 1 1 1 1 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 1 1 3 3 2 2 1 1 1 1 2 2 3 3 3 3 3 3 3 3 2 2 3 3 4 3 2 1 1 1 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 1 2 3 3 2 2 2 1 0 1 2 2 2 3 4 3 2 2 1 2 3 3 3 2 2 2 1 1 1 1 2 3 3 4 6 6 6 5 5 2 2 2 2 2 2 3 3 3 4 4 4 4 5 6 6 5 4 4 5 4 3 3 2 2 2 2 2 2 3 5 6 6 5 4 4 6 7 7 4 0 2 4 4 4 3 3 2 2 1 1 1 1 1 1 0 0 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 10 10 9 9 9 9 9 8 6 4 3 3 3 3 3 4 3 3 4 4 4 3 2 1 1 2 3 3 3 3 3 3 3 5 5 2 1 3 3 3 3 3 3 3 3 2 2 2 1 1 1 3 3 3 3 3 3 3 3 1 1 1 2 2 2 2 2 2 2 2 2 2 2 1 2 1 0 1 1 1 1 0 1 1 1 2 2 2 2 2 3 2 0 2 2 3 4 2 1 0 1 2 2 2 2 1 1 1 1 1 1 0 0 1 0 0 1 2 2 1 1 2 1 2 3 2 3 2 1 2 2 2 2 1 2 4 3 2 2 1 1 1 0 0 0 1 1 1 1 1 2 1 1 3 4 6 6 5 4 4 4 2 2 3 2 3 3 3 3 3 4 5 5 4 4 4 4 4 3 3 4 4 3 2 1 1 1 1 2 2 4 6 6 4 4 4 5 6 6 6 5 2 2 2 2 2 1 1 0 1 2 2 2 1 1 0 0 0 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 8 8 8 7 7 7 7 7 5 4 4 4 4 4 4 3 3 4 5 4 3 1 1 2 2 3 3 3 3 3 2 3 4 5 2 1 3 2 2 3 3 4 4 4 3 3 3 2 2 3 4 4 4 4 3 2 2 1 0 2 2 2 1 2 1 1 1 2 2 2 2 1 0 1 1 1 1 0 1 2 2 1 1 1 1 1 1 2 1 2 3 1 0 1 3 4 2 1 0 2 2 2 2 1 1 1 0 1 1 1 1 1 1 1 1 1 2 3 1 1 1 1 0 2 2 1 1 2 3 3 3 0 3 4 3 2 2 2 2 1 1 1 1 2 2 1 1 1 1 1 1 1 2 4 5 3 2 1 2 3 2 2 3 3 3 3 3 3 4 4 4 5 5 4 4 4 3 3 4 4 3 3 3 3 3 2 2 2 3 5 6 4 2 3 5 6 5 5 4 4 3 2 2 1 1 1 2 1 1 2 2 2 1 0 0 1 1 9 9 9 9 9 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 7 6 5 5 6 6 6 6 5 5 4 5 5 4 4 4 5 5 5 3 1 1 2 2 3 3 3 3 3 2 2 2 4 2 0 2 2 2 2 2 3 4 4 4 4 4 4 3 3 2 2 2 4 4 2 1 1 1 2 3 3 3 4 3 2 2 2 2 2 2 2 2 2 2 1 1 2 3 3 3 2 2 2 2 1 1 2 2 0 2 2 2 2 3 4 2 1 1 2 3 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 1 0 1 2 1 0 1 2 2 2 3 2 1 4 4 3 2 2 2 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 2 1 1 1 0 2 3 2 2 2 3 3 2 3 4 4 4 5 5 5 5 5 4 4 3 3 2 2 2 4 5 5 4 3 3 4 4 3 2 3 5 6 6 5 3 3 3 3 2 2 3 3 2 2 1 1 2 2 2 1 0 1 1 2 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 8 8 8 8 8 8 8 8 7 5 4 4 4 4 5 5 5 4 4 4 4 3 4 4 5 5 5 4 2 1 1 2 3 4 4 3 2 2 2 2 3 3 1 2 2 2 2 1 2 2 3 3 4 4 3 3 2 1 1 2 3 2 2 2 2 2 2 2 3 4 5 5 4 3 3 3 2 1 2 2 2 3 2 2 3 3 3 3 3 4 4 3 2 2 1 2 1 1 2 3 3 3 3 2 1 1 2 3 2 1 2 2 0 1 1 1 0 0 1 1 1 1 1 1 2 2 2 1 2 2 1 2 2 2 1 2 1 0 2 3 3 2 1 1 2 2 1 2 2 1 1 1 2 1 0 1 1 0 1 1 1 2 1 1 2 3 3 3 3 3 3 3 2 3 5 5 4 5 6 6 5 4 4 3 2 1 0 0 0 2 4 4 3 3 3 3 3 4 5 6 6 6 5 4 3 2 2 1 1 2 3 3 2 1 1 1 2 2 2 1 0 1 2 2 9 9 9 9 9 9 9 9 9 9 9 9 8 8 8 8 7 7 7 7 7 7 7 7 6 6 5 4 4 4 4 3 3 3 4 3 3 3 4 5 6 6 5 3 2 2 3 4 4 4 3 3 2 2 2 2 3 2 2 2 2 2 1 0 1 2 3 3 2 2 2 1 1 2 2 2 1 0 0 1 2 2 1 1 2 3 4 4 4 4 3 2 1 0 2 3 3 2 2 3 2 2 3 3 2 2 0 1 2 1 1 1 1 1 2 2 2 3 3 2 2 2 2 1 1 1 2 1 1 1 1 1 1 0 1 1 1 1 1 0 2 2 1 1 1 2 2 1 3 2 1 2 3 3 3 2 1 1 2 1 0 1 2 3 2 2 2 3 2 1 1 1 1 1 1 2 1 0 2 4 4 4 3 2 2 2 1 2 3 4 4 4 4 5 5 3 2 2 2 3 2 1 1 1 0 0 1 1 3 4 2 4 5 5 5 6 6 5 3 2 1 1 1 2 3 2 2 1 1 1 0 1 1 2 1 0 1 2 2 9 9 9 9 9 9 9 9 9 9 8 8 8 8 7 7 7 7 7 6 7 7 7 8 8 8 7 6 6 4 4 3 3 4 4 3 2 2 3 5 6 5 5 4 2 2 3 4 4 4 3 3 2 1 1 2 3 3 1 2 2 1 1 0 1 2 2 2 1 1 2 1 1 2 2 1 1 2 2 2 2 2 2 1 2 2 3 3 3 4 3 3 2 2 2 1 1 2 2 2 0 1 2 2 2 2 2 3 3 3 2 1 2 2 1 2 2 2 3 2 2 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 2 2 1 1 1 2 2 1 2 0 4 5 4 3 3 2 1 0 3 4 3 4 4 4 2 2 2 3 2 1 1 1 1 1 1 1 1 2 3 3 3 2 1 1 1 2 1 1 3 4 4 4 4 5 5 4 3 1 3 5 4 3 2 1 2 2 2 2 3 3 0 5 5 4 4 5 5 4 3 2 2 1 2 2 2 2 0 0 0 1 1 0 1 1 1 1 1 2 2 8 9 9 8 9 9 9 8 8 8 8 8 8 7 7 7 7 7 6 6 6 7 7 8 8 9 9 9 9 7 5 3 4 5 5 5 3 2 1 2 4 5 5 4 2 1 2 3 4 4 4 3 2 2 2 3 4 3 1 2 2 1 1 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 1 1 2 3 3 2 1 2 3 3 2 2 3 3 2 2 2 2 1 1 2 3 3 3 3 2 2 3 3 2 1 2 3 2 2 2 2 2 3 2 1 1 2 0 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 2 1 2 2 2 2 2 2 1 1 4 4 3 2 2 2 2 2 3 4 4 4 4 5 3 2 2 3 3 3 2 1 2 2 2 2 2 3 2 1 1 1 1 1 1 1 1 1 2 3 4 4 4 4 4 3 3 3 3 5 6 6 5 3 2 2 1 2 3 2 1 5 6 5 4 4 4 3 3 3 3 2 1 2 2 1 1 1 2 1 1 1 1 1 1 0 1 1 1 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 7 6 6 6 6 7 7 8 9 10 10 10 10 8 6 5 6 6 5 5 3 1 3 5 5 5 5 3 1 1 2 3 4 4 4 3 3 3 4 4 3 1 1 3 3 4 3 3 3 4 4 4 3 2 2 2 3 4 5 6 5 5 4 4 3 2 1 1 1 1 1 1 2 3 2 3 3 4 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 1 1 2 1 2 2 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 2 1 1 0 2 2 1 2 4 2 1 2 4 4 3 2 2 3 5 5 5 4 4 4 3 2 2 2 2 4 4 3 3 1 3 2 2 2 2 2 2 2 1 1 0 1 1 1 1 0 1 3 3 3 3 3 2 3 4 5 5 5 7 7 5 3 2 2 2 2 2 1 3 6 6 5 3 2 1 1 1 3 4 3 2 1 1 1 1 2 2 1 0 1 2 1 1 1 0 1 1 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 6 6 6 6 6 6 7 7 8 8 9 9 9 7 6 5 5 5 4 3 3 4 5 6 6 6 5 5 3 2 1 2 3 4 5 6 5 4 4 4 3 2 2 3 3 2 1 1 2 3 3 3 2 2 2 2 2 3 4 5 5 5 4 4 5 5 4 3 3 5 5 3 2 3 2 3 3 3 3 3 4 4 4 4 4 3 3 2 1 1 1 2 2 2 2 0 1 1 1 1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 2 1 1 0 2 2 1 2 2 1 2 3 3 4 4 3 3 5 5 5 4 4 4 4 3 1 2 2 3 4 3 3 3 1 4 2 1 2 2 2 2 2 1 1 2 1 1 1 1 1 1 2 2 2 2 3 2 3 3 4 5 5 6 6 3 1 3 5 4 3 3 2 4 7 6 4 3 2 1 1 0 2 3 4 3 2 0 1 1 2 1 1 1 1 2 2 1 1 1 0 0 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 7 6 6 6 5 6 6 6 6 7 7 7 7 7 6 5 4 4 4 4 4 5 4 4 5 6 5 5 6 6 4 3 3 2 3 5 6 6 5 5 4 3 1 1 2 3 1 0 1 1 2 3 3 2 2 2 3 3 3 4 4 4 5 5 5 5 5 4 4 4 5 5 5 4 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 1 2 2 3 3 3 2 1 1 1 1 2 1 2 2 1 1 1 2 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 1 1 2 3 2 1 2 1 2 3 3 1 2 4 5 4 5 6 5 3 2 4 4 3 1 3 2 3 3 1 2 2 1 3 2 1 1 2 2 2 2 2 1 1 1 1 2 2 2 2 3 3 4 3 3 3 4 4 5 5 5 5 5 2 2 4 6 5 4 4 4 5 5 3 1 1 2 1 1 1 1 2 3 3 3 2 1 1 2 1 1 1 1 1 2 2 1 0 0 0 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 6 6 6 6 5 6 6 6 6 6 6 7 7 6 6 5 4 3 3 4 5 3 2 4 4 4 5 6 6 6 6 6 6 5 4 5 5 5 4 3 3 2 3 3 3 2 1 1 1 2 3 3 3 3 3 3 4 4 4 4 4 5 5 4 4 4 3 4 4 5 5 5 4 4 4 3 3 2 1 0 1 1 1 2 3 3 2 2 2 2 3 3 2 2 2 2 1 1 1 2 1 1 2 2 2 2 2 1 1 1 1 1 2 2 2 2 1 1 0 0 1 1 1 1 2 2 0 2 1 2 3 3 1 1 2 3 4 5 5 5 4 2 1 2 3 3 2 2 0 2 3 1 2 2 2 3 2 2 1 2 2 3 2 2 2 1 1 2 2 2 3 3 3 4 4 3 3 3 3 3 3 5 6 6 5 4 5 5 5 6 6 6 7 6 3 2 1 1 2 2 2 2 0 1 2 2 3 3 2 1 1 1 2 2 2 0 1 2 2 1 1 1 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 6 6 6 6 5 5 6 6 6 6 6 6 6 4 3 3 3 4 4 3 2 2 2 2 3 4 5 6 7 8 8 8 7 6 6 5 4 3 2 3 3 3 2 2 3 4 3 3 3 3 3 3 3 3 4 4 4 4 3 4 4 4 4 3 3 4 4 5 4 4 4 4 4 4 4 3 2 1 0 1 0 2 3 2 2 2 2 2 2 2 1 1 2 2 1 1 1 2 1 1 2 2 1 0 0 0 1 1 0 1 2 2 1 0 1 1 1 1 1 1 1 2 1 1 1 1 1 4 4 2 2 2 2 3 3 4 5 4 2 3 3 1 1 2 2 2 2 3 4 4 3 3 4 3 3 2 2 2 2 2 2 2 2 1 2 3 2 3 4 4 4 5 5 4 3 2 3 4 3 3 6 7 7 6 6 6 6 6 6 7 7 5 2 1 2 2 2 3 3 2 1 1 1 1 1 2 3 2 1 2 2 2 2 1 1 1 2 2 2 1 8 8 8 8 8 8 8 8 9 9 8 8 8 8 8 8 8 8 7 7 7 7 6 6 6 6 6 6 6 6 6 5 5 3 3 3 4 4 3 1 2 2 2 2 2 2 4 5 7 9 11 12 10 7 5 3 2 1 1 1 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 4 4 4 4 3 4 5 5 4 4 3 3 4 4 4 4 4 3 2 1 1 1 2 2 1 1 2 2 2 2 2 2 1 2 2 2 2 1 2 2 2 2 1 1 1 1 1 2 1 1 1 1 1 1 0 0 1 1 2 2 2 1 1 1 1 0 1 3 3 1 2 1 3 3 2 3 5 4 2 2 3 2 1 2 2 1 2 3 4 5 5 5 4 4 3 3 3 2 2 3 2 3 3 3 4 4 3 3 4 6 7 7 8 8 8 7 8 8 8 4 4 7 7 8 8 8 7 6 6 6 5 3 2 1 2 2 3 3 3 2 2 2 2 2 2 1 1 2 2 2 2 2 1 1 0 1 2 2 2 2 8 8 9 9 9 9 9 9 9 9 8 9 9 9 9 9 9 9 8 8 8 8 8 7 7 7 7 7 7 6 6 6 6 4 3 3 3 3 1 0 2 3 3 3 2 1 1 1 3 6 10 11 11 8 5 4 3 2 1 1 2 2 1 1 2 2 2 2 2 1 1 1 1 2 2 3 3 3 4 4 4 4 3 4 4 4 4 3 3 2 2 3 4 4 3 3 3 3 1 1 1 1 1 1 2 2 1 1 1 1 2 2 2 2 2 1 1 1 2 2 2 1 1 1 1 2 2 2 1 1 2 1 1 1 1 1 1 1 2 1 1 1 2 1 1 1 2 3 1 2 2 2 3 3 3 5 4 2 2 3 2 3 4 4 3 3 4 4 4 4 4 3 3 3 3 3 3 1 1 3 3 3 4 4 5 5 5 6 7 9 10 10 11 11 10 9 9 9 7 4 4 6 8 9 8 6 5 5 5 4 2 1 1 1 2 2 3 3 3 2 1 2 2 3 3 2 2 2 2 1 2 1 1 1 1 2 2 2 2 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 9 9 9 9 9 9 9 9 8 8 7 7 6 6 6 5 3 3 3 3 2 1 1 1 2 2 2 2 2 1 1 3 6 8 8 6 4 4 5 4 2 1 2 3 2 2 3 3 3 2 2 2 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 4 4 3 3 2 0 1 1 1 0 1 1 1 1 1 1 1 2 2 1 1 1 0 0 1 1 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 1 1 1 0 1 1 1 1 1 2 1 1 2 3 2 2 3 3 3 3 3 3 3 1 2 1 3 5 6 6 4 3 3 2 2 2 3 3 3 2 2 2 3 1 1 4 4 3 3 4 6 7 8 9 10 11 11 11 12 11 11 10 9 8 7 5 4 3 5 6 6 4 4 4 4 3 2 1 1 1 1 2 3 3 3 2 1 1 2 2 3 3 2 2 2 2 2 2 1 1 2 2 1 1 1 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 11 11 11 11 10 10 10 9 8 7 6 5 4 3 3 4 4 3 2 2 2 2 1 1 2 1 1 2 4 6 7 6 4 2 3 4 4 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 4 4 3 3 2 3 3 4 4 3 3 2 0 1 1 2 3 2 2 2 1 1 1 1 2 1 1 2 1 0 0 1 2 2 2 2 2 1 1 1 2 2 2 2 1 2 2 1 1 1 1 1 1 1 2 2 2 2 1 1 3 3 2 3 4 3 3 3 3 3 2 2 3 4 5 4 2 2 2 3 3 3 2 2 2 1 1 2 2 2 1 3 4 3 3 5 6 8 9 11 11 10 9 9 9 10 10 9 9 8 7 6 6 6 5 5 5 4 2 2 3 3 2 2 1 1 2 1 2 3 3 3 3 2 1 1 2 2 3 3 2 2 2 2 3 3 2 2 2 1 1 1 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 11 11 11 12 12 12 12 12 12 12 12 12 10 9 6 5 5 5 4 4 4 3 2 2 2 2 1 1 2 2 3 4 5 6 7 6 4 3 3 4 3 2 2 2 2 2 1 1 2 3 3 2 2 2 2 3 3 3 3 3 3 2 1 1 0 1 1 1 1 2 3 3 3 3 2 3 3 3 3 3 3 3 1 1 1 1 1 1 1 2 2 2 2 2 1 0 1 1 1 1 1 2 2 2 2 2 2 1 1 1 2 2 2 1 1 2 1 1 1 1 1 1 3 2 1 1 2 2 2 1 1 2 3 3 2 2 2 2 3 4 3 3 2 2 4 5 4 2 2 3 4 3 2 1 1 1 2 3 3 0 3 5 3 2 4 5 6 8 9 9 7 5 4 4 5 6 7 7 7 6 6 6 7 7 8 9 7 4 1 0 1 2 2 3 2 1 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 1 2 2 3 3 3 2 2 1 1 9 9 9 9 9 9 9 9 9 10 10 10 10 11 11 11 11 11 12 12 12 13 13 13 13 14 14 14 13 12 11 9 6 4 5 5 5 4 3 1 1 2 1 0 1 2 3 4 4 5 5 5 5 4 3 3 4 3 2 2 2 2 2 1 2 2 1 1 1 1 1 0 1 1 2 2 3 3 3 3 3 2 2 2 2 2 1 1 1 2 2 2 2 2 2 2 3 3 3 2 1 1 1 2 1 1 1 2 1 1 1 1 1 1 1 0 1 1 2 3 3 2 2 3 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 3 2 1 2 3 2 1 1 1 1 2 3 3 2 3 4 4 3 2 1 1 1 3 3 3 2 2 3 3 4 2 1 2 3 3 2 2 2 4 4 3 3 4 3 4 6 6 5 4 1 1 0 2 5 6 6 5 5 6 8 9 10 10 10 9 5 2 2 2 1 1 2 2 2 2 3 3 4 4 3 3 3 2 2 2 2 2 2 2 2 1 1 1 2 3 3 2 2 2 1 9 9 9 9 9 9 9 9 9 10 10 10 11 11 11 11 12 12 12 12 13 13 13 13 14 14 14 14 13 13 12 10 8 5 4 5 5 4 3 2 2 1 1 0 1 2 2 3 3 3 4 4 4 3 2 3 4 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 1 1 1 1 0 0 1 1 1 1 1 1 2 2 3 3 3 3 2 1 0 1 1 2 2 2 2 1 1 2 1 1 1 1 2 2 3 3 3 1 1 2 2 1 1 1 1 1 1 0 0 0 1 2 1 1 2 3 2 2 2 2 1 1 2 3 3 3 2 3 4 3 3 3 4 3 2 1 1 2 3 3 2 2 3 4 3 3 2 2 3 2 1 1 2 3 3 2 3 4 1 3 6 7 6 4 2 2 2 4 5 6 6 6 7 9 10 11 11 11 10 8 6 3 3 2 1 1 1 1 2 2 3 3 3 4 3 3 3 3 3 3 3 2 2 2 2 2 1 1 2 2 2 2 2 2 1 9 9 9 9 9 9 9 9 9 10 10 10 11 11 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 12 11 10 9 8 7 6 6 5 4 3 2 1 1 1 1 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 1 2 2 2 1 0 2 3 3 3 3 3 3 3 2 3 2 2 0 1 1 0 1 2 1 1 0 0 1 1 2 2 2 2 3 3 3 3 3 3 3 2 2 1 1 2 3 3 4 3 2 2 2 1 2 3 3 3 2 1 1 1 1 2 2 1 1 2 1 1 1 1 1 1 1 2 2 1 2 3 2 2 3 3 1 2 3 3 3 3 3 2 4 5 3 1 3 4 2 1 2 3 3 3 1 1 3 4 4 3 2 2 3 2 0 2 3 3 3 1 1 1 2 5 8 9 8 6 5 6 6 6 6 7 8 9 9 11 11 12 10 9 8 7 4 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 1 2 2 2 2 1 1 9 9 9 9 9 9 9 9 10 10 10 11 11 12 12 12 12 13 13 13 13 13 13 12 12 12 12 11 11 10 9 8 7 8 8 7 5 5 4 3 2 2 2 2 2 2 2 3 3 3 3 3 2 1 1 1 1 2 3 3 2 1 2 2 2 2 3 3 3 2 2 2 2 2 1 0 0 1 2 2 2 1 2 2 2 1 1 1 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 3 3 3 3 3 3 2 1 1 2 2 3 3 2 1 1 1 1 1 1 1 1 1 1 1 1 2 3 2 2 3 3 1 2 3 3 2 1 2 2 2 5 4 2 1 3 2 0 3 4 4 3 1 1 2 4 3 2 2 2 3 1 1 3 4 3 3 2 2 2 4 7 8 9 9 9 8 9 10 10 10 10 11 11 11 12 12 11 9 6 4 3 2 1 1 1 2 2 2 2 2 2 2 3 3 3 3 3 4 4 3 3 3 3 2 2 2 2 2 2 2 2 2 2 1 1 0 9 9 9 9 9 9 9 9 10 10 11 11 11 12 12 13 13 13 13 13 13 13 12 12 12 12 11 10 10 9 7 5 4 4 4 3 3 3 3 3 2 2 2 1 1 1 1 2 3 3 3 3 3 2 2 2 2 2 2 3 2 0 1 2 2 2 2 2 2 1 1 1 1 1 1 2 2 3 2 2 1 2 2 2 1 1 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 4 3 3 3 2 1 1 0 1 1 2 3 3 3 2 2 2 1 2 2 3 4 3 2 1 1 1 2 1 2 2 1 1 1 1 1 1 2 3 2 2 3 2 2 2 2 1 0 2 3 2 3 4 3 1 2 2 0 4 5 6 4 2 1 1 3 4 3 3 3 3 1 2 4 3 2 2 1 3 5 7 9 9 9 10 10 11 12 12 12 12 12 11 11 11 11 11 10 7 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 4 4 3 2 2 2 2 1 0 0 1 1 1 1 1 2 2 1 1 9 9 9 9 9 9 9 10 10 10 11 11 12 12 12 12 13 13 13 12 12 12 12 12 12 12 11 11 10 9 7 5 4 4 3 2 3 3 3 2 1 1 2 1 1 1 1 2 3 3 3 3 3 2 2 2 2 2 2 2 2 1 0 1 2 3 2 2 2 2 3 2 2 2 3 3 2 1 1 2 2 2 2 1 1 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 4 4 3 2 1 1 1 2 3 3 2 2 3 2 2 1 1 1 2 3 3 3 3 1 1 0 1 1 1 1 1 1 2 2 2 1 1 2 3 1 1 2 3 2 1 1 1 1 2 3 4 3 3 3 1 1 2 1 4 6 6 5 2 2 2 3 4 2 3 4 3 1 3 3 2 2 2 2 4 5 6 7 8 9 10 12 13 14 13 13 11 10 10 9 9 10 10 8 5 2 1 2 3 3 3 4 3 3 3 3 2 2 2 2 1 2 2 3 3 3 3 2 2 2 2 2 1 1 1 1 1 1 1 1 1 0 0 9 9 9 9 9 9 9 10 10 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 10 9 7 6 5 3 2 2 3 4 2 0 1 2 2 1 1 1 2 2 3 3 3 2 2 3 2 2 2 2 2 2 1 2 2 2 2 2 2 3 3 3 3 3 3 2 1 1 2 3 3 2 1 1 2 2 2 3 3 3 3 2 2 2 2 1 1 1 1 1 1 2 2 3 4 4 4 3 3 3 3 3 3 2 2 3 3 2 1 1 2 2 2 3 3 2 2 2 2 1 1 1 0 0 1 0 1 1 2 0 2 3 2 1 2 2 1 1 2 2 3 4 3 3 2 1 1 0 1 2 2 4 6 6 5 2 2 3 3 2 2 3 4 1 4 4 2 3 3 1 2 4 5 5 5 7 9 11 12 13 13 11 9 8 7 7 7 7 7 7 6 3 1 1 1 2 3 3 3 3 3 3 3 2 2 1 1 1 2 3 3 3 3 3 2 2 2 2 1 1 0 1 1 1 1 1 1 1 1 1 9 9 9 9 9 9 9 10 10 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 10 8 6 4 3 3 4 4 3 1 1 2 1 0 1 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 1 1 1 1 2 3 3 3 3 3 3 3 2 0 2 3 3 2 2 2 1 2 2 2 3 3 3 3 3 3 2 2 2 2 1 1 2 2 2 2 1 2 3 4 4 4 4 5 4 3 2 2 3 3 3 2 2 1 1 2 2 3 3 2 1 1 2 2 1 1 1 1 1 0 1 1 2 2 2 3 2 1 2 2 1 2 2 2 3 3 2 0 2 2 2 2 1 2 2 4 6 6 5 2 1 1 2 3 3 2 1 3 5 3 0 3 2 1 3 5 5 5 5 7 8 9 9 9 8 5 3 3 4 5 6 5 6 5 4 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 1 2 2 3 3 3 3 2 2 2 2 1 0 0 1 1 1 1 1 1 1 1 1 1 9 9 9 9 9 9 9 10 10 10 11 11 11 11 11 11 11 11 11 11 12 12 12 12 11 11 11 11 11 10 10 9 7 6 4 4 3 4 4 3 1 0 1 0 1 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 1 1 1 2 2 2 3 3 3 2 2 2 1 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 4 4 4 4 4 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 1 1 1 1 1 0 1 2 1 1 2 3 3 3 3 2 2 0 1 1 1 2 1 1 1 2 2 1 0 2 3 4 3 3 4 6 7 5 4 2 1 2 3 3 1 1 4 6 4 2 1 2 1 2 3 4 4 4 4 4 5 6 7 6 3 1 2 2 3 4 4 4 4 4 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 1 1 1 1 0 1 1 1 1 1 1 2 2 1 1 1 9 9 8 9 9 9 9 9 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 9 7 6 5 4 4 3 3 3 3 2 1 2 2 2 2 2 1 2 2 2 3 3 3 3 3 3 2 2 2 2 1 1 2 2 2 2 2 2 2 1 0 1 1 2 3 3 2 2 2 1 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 4 3 2 2 2 2 2 2 2 2 2 2 1 1 2 2 1 1 2 1 1 1 1 1 1 3 2 2 2 2 2 2 1 1 1 1 2 2 1 1 1 1 3 2 2 2 2 3 2 3 5 7 8 5 2 1 1 2 2 1 2 4 6 5 2 1 2 1 1 2 3 3 4 4 4 5 5 6 7 5 4 4 3 0 2 3 5 5 5 5 4 4 3 3 3 3 3 2 2 2 2 2 2 3 4 4 3 3 3 3 3 2 1 1 0 0 1 1 1 2 2 1 1 1 1 2 2 2 1 0 8 8 8 8 8 8 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 10 9 8 7 6 5 4 3 3 3 3 2 3 3 3 2 1 1 1 1 1 2 3 3 3 3 3 2 1 1 1 0 1 2 2 1 1 2 2 2 2 2 1 1 1 2 3 2 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 4 4 4 3 3 3 3 3 4 3 3 2 2 2 2 2 2 2 2 1 2 1 1 1 1 1 1 1 1 1 0 1 2 3 2 1 1 2 2 2 1 1 1 1 1 2 1 1 1 2 2 2 1 1 1 2 3 3 4 6 8 6 4 3 2 3 2 3 4 5 5 3 2 2 2 2 3 3 3 3 4 4 5 5 6 7 7 5 4 5 4 3 3 4 5 5 6 6 5 5 4 3 4 4 3 3 3 2 2 2 2 3 4 4 4 3 3 2 2 1 0 1 1 2 2 2 3 3 3 2 1 1 1 2 2 2 1 1 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 9 9 9 8 7 6 5 4 3 3 3 3 3 2 2 1 1 1 1 1 2 2 2 3 3 3 3 3 2 2 2 1 1 1 1 1 1 1 2 3 2 1 1 1 0 2 3 2 1 1 1 1 1 1 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 4 4 4 3 3 3 3 3 3 2 2 2 2 1 0 1 2 2 1 1 1 1 1 0 0 1 1 1 1 1 2 2 2 1 1 1 1 1 1 1 2 1 1 2 2 1 1 0 1 1 1 1 2 1 1 4 4 5 5 6 6 4 4 4 4 4 5 6 6 4 3 3 3 3 3 3 4 4 3 4 4 5 6 6 6 6 5 5 5 5 4 3 4 5 5 6 6 5 4 3 3 4 4 3 3 3 2 2 2 3 4 5 4 4 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 1 1 2 3 3 2 2 8 8 8 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 8 8 8 6 6 6 6 5 4 4 4 4 4 4 2 1 0 0 1 1 1 1 1 1 1 2 3 3 3 3 2 2 2 2 2 1 1 1 1 2 2 2 1 1 1 2 2 3 3 2 2 2 1 1 1 1 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 4 4 4 4 4 3 3 3 3 3 2 2 2 2 2 2 2 1 2 2 1 1 1 1 1 1 1 1 1 2 2 2 2 2 1 0 1 1 1 1 1 0 1 1 1 3 2 2 1 1 1 1 1 2 2 2 2 4 4 4 5 6 6 5 4 5 5 4 4 6 5 4 5 4 3 3 4 4 3 4 4 5 6 7 8 7 6 5 4 5 5 4 3 3 4 5 6 6 5 4 3 3 3 3 3 3 2 2 2 2 2 3 4 5 5 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 1 1 1 2 2 3 3 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 6 6 6 6 6 6 5 4 4 4 4 4 3 3 4 5 4 3 2 1 0 1 1 1 2 1 1 1 1 1 2 3 3 3 3 3 3 2 2 1 1 1 1 1 1 1 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 1 1 2 2 2 2 2 2 2 2 2 2 1 1 1 1 2 2 2 2 1 1 1 1 1 1 1 2 2 2 2 2 1 2 2 2 1 2 2 1 1 1 0 1 2 4 4 4 4 6 5 4 4 4 4 5 6 6 6 5 6 5 5 5 5 4 4 4 5 6 7 8 8 9 9 8 6 5 4 4 3 3 4 5 5 5 4 2 2 3 3 3 3 3 2 2 2 2 2 3 4 5 5 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 7 7 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5 5 4 4 3 3 2 3 3 3 2 3 3 4 3 2 2 1 1 1 2 2 2 2 1 1 1 1 2 2 3 4 3 3 3 3 2 1 0 0 1 1 2 2 2 1 1 2 2 2 1 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 1 2 2 2 2 2 1 1 1 1 1 1 1 1 2 2 2 1 1 1 1 1 1 2 2 2 2 3 2 2 2 0 1 2 2 2 2 1 1 1 1 1 2 3 5 5 5 4 4 3 3 5 5 6 7 8 7 7 7 6 6 7 7 7 5 4 4 6 8 10 12 11 11 11 10 8 7 5 4 4 4 5 6 6 5 4 3 2 2 2 3 3 3 3 3 3 2 2 3 4 5 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 6 6 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 5 5 5 5 5 4 4 4 4 3 2 2 2 2 2 2 2 2 3 3 2 2 1 1 1 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 1 2 2 2 1 0 1 2 2 1 1 0 1 2 2 1 1 1 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 3 2 0 1 1 1 1 1 1 2 1 1 1 3 4 6 6 5 5 4 4 5 6 8 8 8 8 7 7 7 7 8 9 9 8 6 4 4 5 8 10 12 10 9 9 9 8 6 5 3 3 4 5 5 6 5 5 4 3 2 2 3 3 3 3 3 3 2 3 3 4 5 4 4 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 4 4 4 4 4 4 4 3 2 2 2 2 3 3 3 2 2 2 2 2 2 1 1 2 2 3 3 4 4 4 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 1 1 2 1 1 1 1 1 1 2 2 1 1 1 1 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 1 1 1 2 2 2 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 0 0 1 1 1 2 2 1 1 2 1 1 1 0 1 1 1 1 1 1 1 2 3 5 6 7 6 5 5 5 6 7 8 7 7 7 6 6 7 8 9 10 10 9 7 5 4 5 6 8 9 8 6 5 4 4 4 3 3 3 3 3 4 4 4 4 3 2 3 3 3 3 3 3 3 3 2 3 3 4 5 5 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 4 4 3 2 2 1 1 2 2 3 2 2 2 2 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 1 1 1 1 1 0 1 2 2 2 3 2 1 0 0 1 1 1 1 1 1 1 1 1 1 2 1 1 2 1 1 1 1 1 1 1 1 1 2 2 2 2 2 1 2 2 1 1 0 1 1 0 1 1 0 1 2 3 4 5 6 6 6 6 6 7 7 7 7 6 6 6 6 6 6 7 9 10 10 9 7 7 7 7 8 9 10 9 7 4 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 4 4 4 4 4 3 3 4 4 4 4 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 1 1 1 2 2 3 4 4 3 2 2 1 1 2 3 3 3 2 2 2 2 1 1 0 1 1 1 1 1 1 1 0 1 2 1 1 0 1 0 0 1 2 2 3 3 3 3 3 3 3 2 1 1 1 1 1 0 0 1 1 1 1 1 2 2 2 2 2 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2 2 1 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 3 4 4 4 5 7 8 8 8 8 8 7 7 7 7 6 6 6 7 8 9 10 10 9 9 9 11 11 11 11 12 12 10 8 4 2 1 1 2 2 3 3 3 3 2 1 1 1 1 2 2 2 1 1 1 1 1 1 1 2 3 4 4 4 3 3 3 3 3 4 4 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 3 3 2 2 2 1 1 1 1 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 1 1 2 1 1 1 1 2 2 3 4 3 2 2 1 1 2 3 3 3 2 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 1 1 0 1 1 1 2 2 2 2 2 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 2 0 1 0 2 2 2 1 2 2 2 1 2 2 2 2 1 0 1 1 0 1 1 3 4 4 4 6 8 9 10 9 9 8 8 7 7 7 7 7 8 9 10 11 12 12 11 11 12 13 13 13 13 14 16 14 10 5 2 0 1 1 1 2 2 2 2 2 1 1 2 3 3 2 2 2 1 1 1 1 1 1 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 3 3 2 2 1 1 0 1 2 3 3 3 3 3 2 2 2 2 2 1 1 1 1 1 1 1 2 2 1 1 2 3 4 4 3 2 2 2 1 2 3 3 3 2 2 2 2 3 1 1 1 1 0 1 1 1 1 1 1 1 1 2 2 2 2 1 1 1 1 1 1 2 1 1 1 1 0 0 0 1 1 1 1 0 0 0 0 1 1 0 1 2 2 2 1 0 1 2 2 1 0 0 0 1 1 0 1 1 1 0 1 1 1 2 2 1 2 0 2 2 2 1 1 1 2 1 2 3 2 2 1 1 1 1 1 1 2 3 4 4 5 7 10 11 11 9 8 8 7 7 7 8 8 9 9 10 10 11 11 11 11 11 11 12 12 13 14 15 16 13 9 3 1 2 2 2 2 2 1 1 1 1 1 2 3 3 2 1 1 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 5 5 5 4 3 3 2 1 2 3 3 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 2 2 2 2 2 4 4 4 3 2 1 1 1 2 2 3 3 2 2 2 2 2 1 0 1 1 1 2 1 1 1 1 1 1 1 1 1 1 2 1 2 2 2 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 1 2 2 2 1 1 0 0 0 1 1 1 0 1 1 1 2 2 1 1 1 1 2 2 1 2 1 1 2 1 1 2 2 1 1 1 1 0 1 1 2 3 4 4 5 7 10 12 12 10 8 8 7 6 6 7 8 8 9 9 9 9 9 9 9 8 9 9 10 11 12 12 11 9 5 1 1 2 2 2 2 1 2 1 1 2 2 3 3 2 0 2 3 3 3 4 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 5 5 5 5 5 5 5 6 6 6 7 7 7 8 8 8 7 7 7 6 5 4 4 3 3 2 2 2 2 3 3 2 2 2 2 1 1 1 2 2 2 2 2 2 2 2 3 4 4 3 2 1 1 1 1 2 2 3 3 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 2 2 1 1 1 2 1 1 2 2 1 1 0 1 1 1 1 1 2 2 2 2 2 2 2 1 1 1 1 0 1 1 2 2 1 1 1 1 1 0 0 1 0 1 2 1 1 1 1 1 1 1 1 0 1 1 1 2 2 1 2 1 0 0 0 0 0 0 1 2 3 4 4 6 8 11 13 13 11 10 9 7 5 5 6 7 8 8 7 7 7 8 8 8 8 8 7 7 7 8 7 6 4 3 1 0 1 3 3 3 4 4 4 3 3 4 5 4 2 2 3 3 3 3 4 4 4 4 3 3 3 3 4 4 4 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 5 5 5 5 5 6 6 6 7 7 8 8 9 9 9 9 9 9 9 8 7 6 4 3 3 2 2 2 3 3 2 2 2 2 2 1 1 1 1 2 2 2 2 2 2 2 3 3 3 2 2 1 1 1 2 3 3 2 2 1 1 2 2 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 2 2 2 1 1 1 2 3 2 2 2 2 1 1 1 1 1 0 1 1 1 2 2 2 2 2 1 1 1 1 1 1 0 1 2 2 2 1 1 1 0 1 1 0 1 1 2 1 1 1 1 1 1 1 0 1 1 2 2 2 3 2 2 1 0 0 0 0 0 1 2 2 3 4 5 7 10 13 13 12 11 11 10 8 6 5 6 6 6 7 7 7 7 7 8 7 8 7 6 5 5 5 4 3 3 4 4 2 1 3 4 5 6 6 5 4 2 3 4 3 3 3 3 3 3 3 4 4 4 4 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 1 1 2 2 1 1 1 1 1 1 1 1 2 5 5 5 5 6 6 6 7 7 8 9 9 9 10 10 10 10 10 10 10 9 7 5 4 3 3 3 3 3 2 3 4 5 4 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 2 3 3 2 1 1 1 1 2 1 1 0 1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 2 2 2 1 2 2 3 3 3 2 2 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 2 1 1 2 2 1 1 2 3 2 1 1 0 0 1 1 2 2 3 4 6 8 10 12 14 13 12 12 11 10 9 8 6 5 5 6 7 7 7 7 7 7 7 7 6 5 4 4 3 3 3 4 5 5 4 2 3 4 5 5 5 5 4 3 2 1 2 2 3 3 3 3 4 4 4 4 4 3 3 3 3 3 3 3 2 2 2 2 2 1 2 2 2 2 2 2 2 2 1 1 1 1 1 1 0 5 5 5 6 6 6 6 7 7 8 9 9 9 9 10 10 11 11 11 10 10 9 7 5 4 3 3 4 4 5 7 8 9 9 8 8 6 5 4 3 2 1 2 2 3 3 2 2 2 1 1 1 2 2 3 3 3 1 0 1 1 2 2 2 2 1 1 1 0 1 1 1 1 2 1 0 1 1 1 1 1 2 3 2 2 2 2 3 3 2 2 1 1 1 2 1 0 1 1 1 1 1 2 1 0 1 1 1 1 1 1 1 1 1 2 1 0 1 1 0 1 1 1 1 1 2 1 1 1 1 1 1 1 2 1 0 2 2 3 1 1 2 2 2 1 1 0 0 1 2 3 4 5 6 7 9 11 13 15 14 13 12 11 11 10 9 7 6 6 6 7 7 7 7 6 6 5 5 4 3 3 2 2 3 3 3 4 5 5 4 4 4 4 4 5 5 4 4 3 2 2 2 2 2 3 3 4 4 3 3 3 3 3 4 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 5 5 5 5 6 6 6 7 7 8 8 8 8 9 9 10 10 10 11 11 10 10 9 8 7 6 6 7 8 8 8 7 7 6 6 5 5 5 4 4 4 4 4 4 4 3 3 2 2 1 1 2 3 3 3 3 2 1 1 1 2 2 2 2 1 1 1 0 1 1 1 0 1 2 1 1 1 1 1 1 1 1 2 3 2 2 1 1 1 1 2 2 1 1 2 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 2 1 1 2 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 2 2 2 1 2 2 1 1 1 0 0 1 3 5 7 10 11 11 12 11 11 11 11 11 10 10 10 10 10 9 7 6 6 7 7 7 6 5 4 4 3 3 2 2 2 2 2 3 3 2 3 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 5 5 5 5 6 6 6 6 7 7 7 7 8 7 8 8 9 9 9 9 9 10 10 9 9 8 8 7 7 5 4 3 4 3 3 3 3 3 3 4 4 4 4 4 4 4 3 2 1 1 1 2 3 3 3 2 1 1 0 1 2 2 2 1 1 1 1 1 1 1 1 1 2 1 1 2 1 1 1 1 1 0 2 2 2 1 0 1 1 0 1 2 1 1 2 2 1 1 1 0 1 1 2 1 1 1 1 1 1 0 1 1 1 1 2 2 2 3 1 2 2 1 1 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 1 1 1 1 1 0 2 4 6 9 12 13 14 14 14 13 13 12 11 10 9 9 9 10 9 8 7 7 7 7 6 6 5 5 4 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 1 1 1 2 1 1 2 2 2 2 2 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 0 1 1 1 2 2 2 2 2 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 6 6 7 6 6 5 4 3 3 3 2 3 2 2 2 2 3 3 3 4 4 3 3 4 4 4 3 2 1 2 2 3 3 3 2 1 1 1 2 2 2 2 1 1 0 0 0 0 1 1 2 1 1 1 2 1 1 2 1 1 1 1 2 2 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 1 2 2 1 0 1 1 1 1 0 1 1 1 1 2 1 1 2 2 2 1 0 1 1 1 1 2 1 1 1 1 1 1 1 2 1 1 2 2 1 1 1 0 0 1 2 1 1 2 4 6 7 9 10 12 14 15 15 14 13 12 11 10 10 9 9 8 8 8 8 7 6 5 6 5 5 4 3 3 3 4 3 3 3 2 2 1 1 1 1 2 2 1 1 1 2 2 2 2 2 3 3 3 3 3 2 2 1 1 1 1 1 1 0 1 1 1 2 2 2 2 3 2 2 1 1 0 1 1 1 1 1 2 2 2 2 2 2 1 4 4 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 2 2 2 1 0 1 2 2 3 3 4 4 5 4 4 4 4 5 4 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 1 1 1 1 0 0 1 1 1 1 1 1 2 1 1 2 1 1 1 1 2 2 2 1 1 1 1 0 1 1 0 1 2 1 0 0 1 1 2 1 0 0 0 1 1 1 1 1 1 1 1 2 2 1 1 2 1 1 1 2 1 0 1 1 1 1 1 0 1 2 2 1 1 2 2 1 1 1 1 0 1 1 1 1 2 4 5 7 8 8 8 9 10 11 11 11 10 10 9 8 8 8 8 7 8 8 7 6 5 4 5 5 4 3 3 3 4 4 3 3 2 2 1 1 0 0 0 1 1 1 2 3 3 4 4 4 3 3 3 2 2 1 1 1 1 1 1 1 0 0 1 1 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 2 2 3 3 2 2 2 1 1 4 4 4 4 4 4 4 4 4 5 4 4 4 4 3 3 3 3 3 3 3 4 3 3 2 2 2 2 1 1 1 1 1 1 2 2 2 3 4 4 5 5 5 4 4 4 5 5 3 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 0 1 1 1 2 2 1 1 1 1 2 1 1 1 0 2 2 2 1 1 1 1 1 1 2 0 1 2 1 1 1 1 1 1 1 0 0 1 2 1 1 1 1 1 2 0 1 2 1 0 1 2 2 1 1 1 1 1 0 1 0 1 1 2 2 1 1 2 1 0 1 1 1 1 2 2 1 1 2 4 5 6 7 9 10 10 8 7 7 7 8 8 8 7 7 8 8 7 6 6 6 6 5 3 3 4 5 5 4 4 4 4 4 3 2 2 1 1 0 0 0 0 0 1 2 2 3 3 4 4 3 3 2 1 1 1 2 2 2 2 2 1 1 1 1 1 2 2 1 1 1 1 2 2 2 2 2 1 1 1 2 2 2 2 3 3 2 2 2 1 1 3 3 4 4 3 4 4 4 4 4 4 4 4 4 3 3 2 2 3 3 3 3 2 3 2 2 2 1 1 1 1 0 1 2 2 2 2 2 3 4 5 5 5 5 4 4 4 3 2 2 2 2 2 2 1 0 1 2 1 1 2 1 1 1 1 1 1 1 0 1 1 1 1 2 1 1 0 1 2 2 1 1 1 2 2 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 2 1 0 1 1 1 1 0 1 2 1 1 1 2 1 1 1 1 1 1 1 0 1 1 2 2 2 1 1 1 1 1 1 0 1 2 2 1 1 2 3 4 6 7 8 10 11 12 11 9 8 7 7 6 6 6 6 8 8 7 5 4 3 4 4 3 2 3 5 6 5 4 4 3 3 2 2 2 1 1 1 0 1 1 1 1 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 1 1 1 2 2 1 1 1 1 1 2 2 3 2 1 1 2 2 3 2 2 2 2 2 2 2 1 1 3 3 3 3 4 4 4 4 4 4 4 4 4 4 3 3 2 3 3 4 3 3 2 2 2 1 2 1 1 1 2 2 1 2 2 2 2 2 3 4 5 5 5 4 3 3 2 2 2 2 2 2 2 2 2 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 2 3 2 2 2 2 2 1 1 1 2 2 1 1 2 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 0 1 2 1 1 1 1 1 1 1 1 2 2 2 1 1 1 1 0 1 2 1 1 1 2 2 3 5 7 8 8 9 10 11 11 10 9 7 6 6 6 6 7 8 8 7 4 3 2 2 3 3 3 3 4 5 5 3 3 2 2 2 2 1 1 1 1 1 1 1 1 0 2 2 2 2 2 2 2 3 3 4 4 4 3 3 3 2 2 2 2 1 1 1 2 2 1 1 1 1 1 2 2 2 2 1 1 2 3 3 2 2 2 2 2 2 2 1 1 3 3 3 4 4 4 4 5 5 4 4 4 3 2 2 2 2 3 3 3 4 3 2 2 2 2 1 1 1 1 1 0 1 2 2 2 2 3 4 5 5 4 4 3 3 3 2 2 2 1 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 2 2 3 2 2 1 1 0 1 2 2 0 1 1 0 0 1 1 1 1 0 0 0 1 2 2 1 1 1 1 1 1 1 2 1 1 1 1 2 2 1 0 1 1 1 1 1 1 2 2 1 1 1 1 1 1 1 2 2 1 0 1 1 1 1 1 1 1 2 3 4 4 5 7 8 8 7 7 7 7 7 7 7 6 6 6 6 7 8 8 8 8 6 5 5 4 5 5 5 5 5 4 4 3 2 2 2 2 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 2 3 4 4 3 3 3 2 2 2 2 2 1 1 1 1 1 2 2 2 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 1 1 4 4 4 4 5 5 5 4 4 4 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 1 1 1 1 2 2 2 3 3 3 4 5 5 5 4 3 2 3 3 2 2 2 1 1 1 2 2 2 2 2 1 1 1 1 1 1 1 0 0 1 1 1 2 1 2 2 1 1 2 2 2 2 2 1 1 0 1 2 2 1 1 1 1 1 1 1 1 1 0 0 1 2 1 1 1 1 1 1 1 1 1 2 1 1 2 2 2 1 1 1 2 1 0 1 1 1 1 2 1 0 1 2 1 1 1 2 2 0 1 1 1 1 1 1 1 2 3 4 6 7 8 8 9 8 7 5 4 4 4 5 7 6 5 5 6 7 8 8 9 8 8 7 7 7 6 6 5 5 4 4 3 3 3 3 2 2 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 2 2 3 3 3 2 2 2 2 2 2 4 5 5 5 5 5 4 4 3 3 2 2 2 2 2 2 2 1 1 2 1 1 1 1 1 1 0 1 2 2 3 3 3 3 4 5 6 6 5 3 2 1 2 2 1 1 1 1 2 1 1 2 2 1 1 1 1 2 2 1 1 1 1 1 1 1 1 1 2 2 2 2 1 2 2 2 1 1 1 1 1 0 2 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 2 1 1 1 1 0 2 2 2 1 2 1 2 1 1 1 0 0 0 0 1 1 1 2 1 0 1 2 1 1 1 1 0 0 0 0 1 3 4 6 8 10 11 10 10 9 7 4 3 3 4 5 6 6 5 4 5 7 8 9 9 9 7 7 6 6 4 4 4 3 3 3 3 3 3 3 2 1 1 1 1 1 1 1 1 2 2 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 2 2 3 3 3 3 2 2 2 2 2 2 5 5 5 5 5 4 3 3 3 3 3 2 3 2 2 2 1 0 1 1 1 0 0 1 1 1 2 2 3 3 3 4 5 6 6 6 6 5 3 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 1 1 2 1 1 1 1 1 1 1 1 0 2 2 2 2 2 1 2 2 1 1 1 1 1 1 1 2 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 2 1 1 1 1 1 1 2 1 1 1 2 1 1 1 1 1 1 1 1 1 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 3 4 6 8 9 8 7 7 7 7 5 4 4 4 4 5 5 5 5 5 6 7 8 8 8 8 7 6 5 4 4 4 3 3 3 2 2 3 3 3 2 1 1 2 2 2 2 2 2 2 2 2 1 1 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 3 3 3 4 4 4 3 3 2 2 2 3 2 5 5 5 5 4 3 2 2 2 2 3 3 2 2 1 1 1 1 1 1 1 1 1 1 2 2 3 3 3 3 5 6 7 7 6 5 4 2 1 1 1 1 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 1 1 1 2 1 1 1 1 2 2 2 1 1 1 2 1 1 1 1 1 1 0 1 2 2 1 2 2 1 1 2 1 1 1 0 1 1 1 1 2 1 0 0 0 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1 0 1 2 2 1 1 2 2 1 1 1 2 2 3 4 5 6 7 8 9 9 6 4 4 4 5 4 4 5 5 5 6 6 6 7 7 8 7 7 7 6 6 5 5 5 5 4 4 4 3 3 3 3 3 3 3 2 2 3 4 4 4 3 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 1 1 1 1 2 2 2 2 1 1 1 1 1 2 2 2 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 6 5 4 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 1 2 2 2 1 2 3 4 4 4 4 4 5 6 5 4 3 2 2 2 2 2 2 2 1 1 2 2 2 2 2 1 1 1 2 1 1 2 2 2 2 1 1 0 1 1 1 1 2 2 2 2 1 0 1 1 1 1 1 1 1 1 0 1 2 1 1 2 1 1 1 2 1 1 1 0 1 1 1 1 0 2 1 1 1 0 1 1 1 1 1 1 1 1 2 2 1 1 1 1 0 1 1 1 1 1 1 2 2 1 2 2 2 1 1 1 1 2 3 5 6 7 8 9 10 10 9 8 6 6 6 5 5 5 6 6 6 6 6 7 7 8 8 7 6 6 5 5 4 5 5 5 4 4 4 4 4 4 4 3 3 3 3 2 3 5 6 6 5 4 2 1 0 1 1 1 1 1 1 0 1 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 5 4 3 3 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 1 2 2 2 2 3 3 3 4 4 4 3 2 2 3 2 2 2 3 3 3 2 1 1 1 1 1 2 2 1 1 1 1 1 1 2 2 2 1 1 1 1 1 1 0 1 2 1 1 2 2 2 2 2 1 0 1 2 2 1 0 2 1 0 2 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 2 1 1 1 1 1 2 2 1 1 0 1 1 2 1 0 1 1 1 1 3 4 4 5 6 8 9 10 11 11 10 10 9 9 8 7 7 7 8 8 7 7 7 7 7 8 7 7 6 5 5 5 5 4 4 4 4 4 4 4 4 4 4 3 3 2 2 3 5 7 8 8 7 5 3 2 1 1 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 2 2 2 4 3 3 3 3 3 2 2 2 2 2 1 1 1 1 1 1 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 1 1 1 1 1 2 1 1 1 1 2 2 1 2 2 1 1 1 1 1 0 1 1 1 1 1 1 2 2 2 1 1 1 2 2 2 1 0 2 1 1 2 1 1 2 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 2 2 0 1 2 1 1 0 0 1 1 1 1 1 2 4 5 5 6 6 6 7 8 9 10 10 10 11 10 9 8 8 8 8 7 6 7 8 8 9 9 8 7 6 5 5 5 5 4 4 4 4 4 5 5 5 4 3 2 1 1 2 4 5 7 7 7 7 6 4 3 2 2 2 2 2 2 2 3 3 3 3 3 4 4 4 4 3 4 4 4 4 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 1 1 1 0 1 1 1 2 3 3 3 3 3 3 3 2 2 1 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 2 2 1 1 1 1 1 0 1 1 1 1 0 1 1 2 2 2 1 1 2 2 2 1 0 1 1 1 2 1 1 1 2 1 1 1 1 1 2 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 2 2 1 1 1 2 1 1 1 0 1 1 1 1 1 1 3 4 5 5 5 4 3 4 6 7 8 8 8 8 7 7 7 7 6 5 5 6 7 8 8 7 7 6 6 5 5 5 5 5 4 5 5 5 5 5 5 5 4 2 2 2 2 3 4 5 5 6 6 6 5 4 3 3 4 4 4 4 4 4 4 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 4 3 3 4 4 4 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 1 1 2 1 0 1 1 1 2 2 2 3 2 2 3 3 3 2 1 1 1 1 1 1 1 1 2 2 1 2 1 1 1 1 1 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 1 1 2 2 2 2 1 1 1 2 2 2 2 2 1 2 1 2 1 0 2 1 1 0 1 1 1 2 1 0 1 0 1 1 1 1 1 1 1 2 1 1 1 1 1 2 2 2 1 1 1 2 1 1 1 0 0 1 1 1 0 0 2 4 5 4 4 3 2 2 4 6 5 4 3 4 4 5 5 5 5 5 5 5 6 6 6 6 5 4 4 4 4 4 4 5 5 5 5 5 5 5 4 4 4 3 3 3 4 4 5 6 6 6 5 5 4 4 4 5 5 5 5 4 4 4 4 4 3 3 4 4 4 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 4 4 4 4 4 3 3 4 4 3 3 3 2 2 1 1 1 2 2 2 2 2 2 1 2 2 2 2 0 1 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 2 3 2 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 2 1 0 1 1 1 0 0 0 2 2 1 1 0 2 2 2 2 2 2 1 1 2 2 2 2 2 1 2 2 1 2 1 2 2 1 0 1 1 0 1 1 1 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 2 2 1 1 1 2 1 1 1 1 1 1 1 0 0 1 3 4 5 4 3 3 2 3 5 6 4 3 2 2 3 4 4 5 5 5 5 5 5 5 4 4 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 3 3 4 4 5 5 5 5 5 5 4 4 3 3 3 4 4 4 5 4 4 4 4 4 3 3 3 4 4 4 4 3 3 3 2 2 2 1 2 2 2 2 3 3 3 3 4 4 4 4 3 3 3 3 3 3 3 2 1 1 1 1 2 2 2 1 1 1 1 1 2 2 1 1 1 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 1 2 1 1 1 1 1 1 2 2 2 1 1 1 1 0 0 1 1 2 1 1 1 0 1 1 0 1 2 1 1 1 1 1 1 1 1 1 2 2 2 2 1 1 1 1 2 2 1 1 2 3 3 2 2 1 2 1 1 1 1 1 2 2 1 0 0 1 0 1 2 1 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 2 1 1 2 1 2 1 0 1 1 1 1 1 0 0 1 4 5 4 4 3 3 4 4 5 5 4 3 2 3 3 4 3 4 5 5 5 4 3 3 3 3 3 3 2 3 3 3 3 3 3 3 4 4 4 4 4 3 3 3 3 3 4 4 3 3 3 2 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 4 4 3 3 3 3 3 3 3 2 2 2 2 2 2 1 1 0 1 1 1 1 1 0 1 2 2 2 2 2 3 3 2 2 3 2 2 1 1 1 1 1 2 1 1 2 2 1 1 2 1 0 1 1 1 2 1 1 1 0 1 1 1 1 1 1 2 2 2 2 1 1 1 1 2 1 1 1 1 1 0 1 1 1 1 1 2 2 2 3 2 1 1 1 2 2 0 1 2 2 1 2 1 1 2 2 2 1 1 2 2 2 1 0 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 2 2 1 1 1 1 2 2 1 0 1 2 1 0 1 1 1 3 4 5 4 3 3 4 4 4 5 4 4 3 4 3 3 3 3 4 5 5 4 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 1 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 5 5 5 5 5 4 4 3 3 3 4 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 1 1 1 1 1 1 1 0 0 1 2 2 2 2 2 2 3 3 3 2 2 2 1 0 1 1 1 2 2 1 1 1 1 1 1 2 1 1 0 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 2 1 0 0 1 1 0 0 0 1 1 1 1 2 1 0 2 2 2 1 1 2 2 2 3 2 2 2 2 1 2 0 1 2 1 1 1 0 1 1 0 0 1 1 1 1 1 0 2 1 1 1 1 1 1 1 2 1 1 1 1 1 2 1 1 1 1 2 1 1 1 0 1 3 4 4 4 3 3 3 4 4 4 4 4 4 3 3 3 3 3 4 5 5 4 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 1 1 2 2 2 2 3 3 3 3 3 3 4 4 4 4 5 5 5 5 5 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 1 1 1 1 1 2 1 0 1 2 2 2 2 2 2 2 2 3 2 2 1 1 1 1 2 2 2 1 1 1 1 1 1 2 2 2 1 1 1 2 2 2 2 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 0 0 1 1 1 1 1 2 2 2 2 2 2 1 1 2 2 2 2 1 1 1 2 2 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 2 1 1 1 1 1 1 1 0 1 1 0 2 2 1 1 1 1 1 1 1 1 1 1 1 1 0 0 2 1 1 0 1 2 3 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 3 3 2 2 2 1 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 4 4 3 4 4 4 4 4 5 5 5 5 5 4 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 1 1 1 1 1 0 1 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 3 2 2 2 1 1 1 1 1 1 2 2 1 2 2 2 2 1 2 2 1 1 0 0 1 1 2 1 1 2 1 1 1 1 1 1 0 0 0 1 1 2 2 2 1 1 2 2 2 1 1 2 2 1 1 1 1 2 2 2 1 1 1 1 1 1 1 1 1 1 1 2 0 1 1 1 0 1 1 2 1 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 3 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 4 4 4 3 3 2 2 2 1 1 2 2 2 2 3 3 3 3 3 2 2 2 1 1 1 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 4 4 4 4 4 4 3 3 3 2 1 1 0 0 1 1 1 1 1 1 1 1 2 2 2 1 1 1 1 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 2 2 2 2 0 1 2 1 1 1 1 1 1 1 1 0 1 1 2 2 1 1 1 2 2 1 1 1 1 2 1 1 0 0 1 2 3 1 1 1 1 1 0 1 2 2 1 1 1 1 1 1 0 1 0 1 2 2 2 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 0 1 2 2 1 1 1 1 1 2 1 1 1 2 3 5 5 5 5 5 5 5 4 4 4 5 4 4 4 5 5 6 6 5 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 1 1 1 1 1 2 3 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 2 2 2 2 1 1 1 1 1 1 1 1 0 1 1 1 1 1 2 2 1 2 2 2 3 3 2 2 2 2 2 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 0 1 1 2 1 1 1 1 1 1 0 1 1 1 1 1 1 2 2 1 1 1 1 2 1 1 0 1 2 3 2 1 1 0 1 1 1 1 1 0 1 2 1 0 1 1 0 0 1 2 1 1 1 1 1 2 1 1 1 2 1 1 1 1 0 1 1 1 1 1 1 1 1 2 1 1 1 1 0 1 2 1 1 1 1 1 0 1 2 2 2 2 2 3 4 4 4 4 4 5 5 5 4 4 5 5 5 4 5 5 7 6 5 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 1 1 1 1 1 2 3 3 3 3 3 3 3 3 2 2 3 3 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 3 3 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 1 1 1 2 2 2 1 1 1 1 1 1 1 1 2 1 0 0 1 1 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 1 1 2 1 0 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 1 2 1 1 1 1 1 1 2 1 1 1 1 1 0 1 2 2 2 2 2 3 4 5 5 4 5 5 5 5 4 4 5 5 5 4 4 5 7 6 5 3 3 3 4 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 1 1 1 1 1 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 1 1 2 1 1 2 1 1 1 1 2 2 1 1 2 1 1 1 2 1 1 1 2 2 2 1 1 1 1 2 2 1 0 1 0 0 0 1 1 1 1 1 2 1 0 1 1 1 2 1 1 1 1 1 0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 2 1 1 0 1 1 2 2 2 1 1 1 0 1 2 2 1 2 2 3 3 4 4 5 5 5 5 4 4 4 4 5 5 5 5 5 6 7 7 5 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 1 1 1 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 2 2 2 1 1 0 1 1 1 2 2 2 2 2 2 2 2 1 1 1 1 1 1 2 2 1 2 2 1 1 1 1 1 2 2 2 2 2 3 3 2 2 1 1 1 1 1 0 1 1 1 1 2 1 1 1 1 1 1 1 1 2 2 2 1 1 0 0 0 1 1 1 0 1 1 1 1 1 1 2 2 1 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 0 0 1 1 2 2 2 2 1 0 1 1 2 2 2 2 3 4 4 4 5 5 6 5 5 5 5 5 5 5 6 6 6 6 7 7 6 5 4 3 3 3 3 3 2 2 2 2 2 2 2 1 1 2 2 2 2 3 3 3 3 2 2 2 1 1 1 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 2 2 2 3 1 1 1 1 1 2 2 2 2 2 1 1 1 1 1 1 2 2 1 1 1 1 1 2 2 1 1 1 2 1 0 1 1 2 3 4 3 3 2 2 1 1 1 1 1 1 1 0 1 2 1 1 1 2 1 1 1 0 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 2 2 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 1 1 1 1 1 1 2 2 2 2 2 3 3 4 4 5 5 6 6 6 5 5 6 6 6 6 7 8 8 7 7 6 6 5 4 4 3 3 3 3 2 2 1 1 0 0 1 1 1 2 2 2 2 2 2 2 2 2 2 1 1 0 0 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 4 4 4 3 3 2 3 3 3 2 2 3 3 4 4 4 4 5 5 5 5 4 4 3 3 2 2 2 3 3 3 3 2 1 1 1 2 2 2 1 1 1 1 1 1 1 1 1 2 2 2 2 1 1 1 1 2 1 1 1 1 1 0 0 1 2 2 3 3 3 4 4 3 2 2 2 2 1 2 2 2 3 2 2 2 2 2 2 2 1 2 2 1 2 2 2 2 2 1 2 2 2 3 3 3 1 1 1 0 1 1 2 2 2 2 1 1 1 1 1 2 2 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 1 2 2 2 1 1 1 1 0 1 2 2 1 2 2 2 2 3 4 5 5 5 5 6 6 6 6 6 7 7 7 8 9 9 9 7 6 5 4 4 3 3 3 3 3 2 2 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 1 0 1 1 0 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 1 1 2 2 3 3 3 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 5 5 5 4 4 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 2 2 2 3 2 1 2 2 2 2 2 1 1 2 1 2 3 3 3 3 3 2 2 2 3 3 3 3 2 1 1 2 2 3 3 2 1 0 0 0 2 2 2 0 1 2 0 2 4 3 2 1 1 1 1 0 1 1 1 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 2 1 1 1 0 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 3 3 4 5 5 5 5 5 6 6 6 6 7 7 8 9 9 9 8 7 6 4 3 3 2 2 3 3 3 3 2 1 1 1 1 1 1 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 3 3 4 4 4 4 4 5 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 2 1 1 1 1 2 1 2 3 2 2 2 1 1 2 2 1 1 1 1 2 3 4 4 4 4 3 1 2 2 3 4 3 2 1 1 1 2 3 5 2 1 0 0 0 1 2 1 1 1 2 1 2 4 3 2 1 1 1 1 1 0 0 1 1 1 1 1 2 1 1 1 1 1 1 1 2 1 1 2 1 1 1 1 1 1 1 1 0 1 2 2 1 1 1 1 1 2 1 1 1 1 1 0 1 1 2 1 1 1 1 2 3 4 4 4 4 5 5 5 5 5 6 6 6 6 7 8 8 9 9 9 8 7 5 4 4 3 3 3 4 4 4 3 2 1 1 0 0 0 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 4 4 4 5 5 5 4 4 3 3 3 4 3 3 2 2 2 3 3 3 3 3 3 4 3 3 3 3 3 3 2 2 2 1 1 1 1 1 2 1 1 0 1 1 1 2 2 1 2 2 1 1 2 2 2 1 1 2 2 2 1 1 2 1 1 1 2 1 2 3 4 4 4 4 5 2 1 1 2 4 3 2 0 0 0 0 4 5 4 2 2 2 1 0 0 1 1 2 1 1 1 3 4 2 1 1 1 1 1 1 0 1 1 1 1 1 2 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 1 2 1 1 1 1 1 2 2 1 1 1 1 0 0 1 1 1 1 1 1 1 2 3 3 3 3 3 4 5 5 4 5 5 6 7 7 8 8 9 9 9 8 8 7 5 5 4 4 4 5 5 5 3 2 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 4 4 3 4 4 4 4 4 4 3 3 3 4 4 4 4 4 3 3 3 2 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 4 4 3 3 3 3 4 3 3 1 1 1 1 1 1 2 2 1 1 1 1 2 1 1 2 3 3 3 3 2 2 2 1 2 2 1 0 1 1 1 1 1 1 0 1 2 1 1 2 3 3 3 3 4 3 2 1 2 3 2 1 0 0 1 1 3 4 4 4 3 3 3 2 1 1 1 1 1 1 1 3 3 2 1 1 1 1 2 1 1 1 0 1 1 1 1 2 1 2 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 0 1 2 1 1 1 1 1 1 1 1 1 2 3 3 4 4 3 4 4 5 5 4 5 6 7 8 8 9 10 10 10 10 9 8 7 6 5 4 4 4 4 3 2 1 0 0 1 2 3 4 4 3 3 3 3 4 4 4 4 4 4 3 3 4 4 4 4 4 5 4 4 4 3 3 4 4 4 5 5 4 4 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 4 4 4 4 4 4 3 3 4 4 4 4 5 5 4 4 4 4 3 3 4 4 4 4 3 1 2 2 2 2 2 2 2 2 2 3 3 2 1 2 3 2 1 1 1 1 1 1 1 1 0 0 0 1 1 1 0 1 1 1 2 2 2 2 3 3 2 2 2 3 4 2 2 2 2 1 0 1 0 1 2 3 4 4 4 3 3 3 2 1 1 1 1 2 1 1 2 3 2 0 1 2 1 1 2 2 2 1 1 1 1 1 2 2 2 2 0 1 0 1 1 1 1 1 0 1 2 1 1 1 1 1 2 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 3 4 4 4 4 4 4 4 5 5 5 6 7 8 8 9 10 11 11 11 11 10 9 8 7 5 4 3 3 2 1 1 1 0 1 3 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 5 5 5 5 5 5 4 4 3 4 4 4 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 4 4 4 3 3 3 4 4 5 5 5 5 5 4 4 4 4 4 4 4 5 5 4 3 1 1 1 1 1 2 2 2 1 2 4 3 2 2 1 2 2 1 1 1 1 1 2 2 2 1 1 0 1 1 0 1 1 2 2 2 1 1 1 2 3 2 2 1 3 4 3 2 2 2 1 1 1 0 3 3 3 2 3 3 2 2 2 1 1 1 1 1 2 1 0 2 2 2 0 1 1 1 1 1 1 1 2 1 1 1 1 2 2 1 1 1 1 0 1 2 2 2 1 1 1 2 2 1 1 1 1 0 0 1 1 1 1 1 2 2 2 2 1 1 1 0 1 2 2 2 2 3 3 4 3 3 4 4 4 4 5 5 6 6 7 8 8 9 10 11 12 12 11 10 9 8 6 5 4 3 2 1 1 1 1 2 3 4 5 4 4 4 5 5 5 5 5 5 5 5 4 4 4 5 5 5 5 5 5 4 4 4 4 4 4 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 4 4 4 3 4 4 5 5 5 5 5 5 5 5 5 5 5 5 6 6 5 4 3 1 1 1 1 2 2 2 2 1 1 3 3 2 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 2 2 2 2 2 0 2 2 2 2 2 2 2 3 4 3 2 1 0 1 0 1 3 3 2 1 1 2 2 2 1 1 0 0 1 1 1 1 1 2 2 2 1 0 1 0 1 0 1 1 1 1 1 1 2 1 1 1 1 1 0 1 1 2 2 1 1 0 0 1 2 2 1 0 1 1 2 2 2 1 1 1 2 3 2 2 1 1 1 1 1 2 2 2 2 3 4 4 3 3 4 5 5 6 6 6 7 7 7 8 9 10 11 11 12 12 11 10 8 7 6 5 3 2 2 1 2 2 3 4 5 5 4 3 3 3 4 4 5 5 5 5 5 5 5 4 4 5 5 5 5 4 4 4 4 4 4 4 4 5 5 5 4 4 4 5 5 5 4 4 4 4 4 3 2 2 2 2 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 5 4 4 1 0 1 1 2 2 2 1 1 0 1 2 1 1 1 1 1 1 0 1 1 0 1 1 1 0 1 1 1 2 2 2 1 1 1 1 2 1 1 2 2 2 2 3 2 2 3 3 2 1 1 1 0 1 2 3 2 1 1 2 2 2 1 0 0 0 1 1 1 1 1 1 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 2 2 1 1 0 1 1 1 1 1 0 1 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 3 3 3 3 4 4 4 5 6 6 6 6 7 9 9 10 11 11 11 11 11 11 11 10 9 7 6 4 3 2 2 3 3 4 5 5 5 5 4 2 2 3 3 4 4 4 4 4 4 5 5 5 5 5 5 5 5 4 4 4 4 3 4 4 5 5 5 5 5 4 5 5 5 4 4 4 4 3 2 2 2 1 1 2 2 3 3 3 4 4 4 4 4 4 4 5 5 5 5 5 5 5 6 6 6 6 6 6 5 5 4 4 3 1 1 1 1 2 2 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 2 2 1 2 2 2 3 3 3 3 3 3 2 1 0 0 0 2 2 2 2 2 2 2 2 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 2 2 2 2 2 2 1 1 1 0 1 1 1 1 2 2 1 1 0 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 1 0 1 1 1 2 2 2 2 2 2 3 3 3 3 4 4 4 5 6 6 6 6 7 8 10 11 12 12 12 12 12 12 11 11 10 9 8 6 4 3 2 3 4 5 6 6 6 5 4 3 3 2 3 3 3 3 3 4 4 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 4 4 3 3 3 3 2 2 2 2 2 2 3 3 3 4 4 4 4 4 5 5 5 5 5 5 5 6 6 6 7 7 7 6 6 5 4 4 3 3 3 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 0 0 0 0 1 1 1 2 1 2 1 2 2 2 2 2 2 3 3 3 2 2 2 1 0 1 0 2 2 2 2 2 2 2 2 2 2 2 1 0 1 1 0 1 1 1 1 1 1 0 1 1 1 2 2 2 2 2 2 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 2 2 2 1 1 1 1 1 1 0 0 1 1 1 1 1 2 2 2 2 2 2 2 3 3 4 4 4 5 5 6 7 8 8 8 8 9 10 11 12 12 12 13 13 12 12 11 11 10 8 6 4 3 3 3 5 6 7 6 6 5 4 4 4 3 4 3 3 3 3 3 4 4 5 5 5 5 5 5 4 4 3 3 4 4 4 5 5 5 5 5 5 5 5 5 4 4 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 6 6 7 7 7 6 5 4 4 3 3 3 3 4 1 1 0 1 2 2 2 2 2 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 1 1 2 3 4 3 2 2 1 0 0 1 1 2 2 1 2 2 2 2 2 2 2 2 1 1 1 1 1 2 1 0 1 0 0 1 1 0 1 1 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 2 2 2 2 2 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 3 3 3 3 4 5 5 5 6 7 8 9 10 11 11 11 11 11 10 10 11 11 12 12 12 12 11 11 10 8 6 4 3 4 5 6 7 6 6 5 5 5 5 4 4 4 3 3 3 3 4 4 4 5 5 5 5 4 3 3 3 4 4 5 5 5 5 5 5 6 5 5 5 5 4 4 4 4 4 3 4 4 4 4 4 4 3 3 3 3 3 4 4 4 4 4 5 5 5 4 5 5 6 6 6 6 5 5 4 3 3 3 3 3 4 4 1 1 1 0 2 2 1 1 1 1 1 2 1 1 2 1 1 2 2 2 1 0 0 0 1 1 1 1 0 0 1 1 2 2 2 2 2 2 2 1 1 0 1 2 4 5 4 3 2 2 1 1 1 1 2 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 1 1 1 2 2 2 1 1 1 0 0 1 1 1 1 2 2 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 3 4 4 3 3 4 4 5 6 6 6 6 7 9 11 11 12 12 12 11 10 9 8 8 8 9 10 11 12 12 11 11 10 8 5 5 4 5 6 7 7 6 6 6 6 5 5 4 4 4 4 4 4 4 5 5 5 5 5 5 4 3 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 3 3 3 3 3 4 4 4 4 4 4 5 5 4 4 4 5 5 5 5 5 4 4 3 3 3 3 3 4 4 4 0 0 1 1 2 1 0 2 2 1 0 0 1 1 1 2 2 3 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2 3 4 4 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 1 2 1 2 2 2 2 2 2 2 2 3 3 2 1 1 1 1 1 1 1 2 1 1 1 2 1 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 1 2 1 1 2 2 2 1 2 2 3 4 4 4 4 4 5 5 6 7 7 7 7 8 10 11 12 12 13 12 11 10 9 9 8 8 8 9 10 11 11 11 11 10 9 7 6 7 7 7 7 7 7 6 6 6 6 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 3 3 2 2 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 4 4 4 4 4 5 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 2 3 3 2 1 1 2 2 2 1 1 1 2 2 2 2 2 1 1 1 2 2 2 3 2 2 2 1 2 3 3 3 2 2 2 1 1 1 1 1 1 1 1 0 0 0 1 1 1 0 1 1 0 1 1 1 2 2 2 2 2 3 3 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 1 1 0 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 4 4 4 4 4 5 6 7 7 7 8 8 9 10 11 11 11 12 11 11 10 11 11 10 9 9 9 10 11 10 10 10 9 8 8 8 9 9 8 8 7 7 7 7 6 6 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 3 3 2 2 2 2 3 4 4 4 4 3 3 3 3 3 3 3 3 4 4 4 5 5 6 5 5 5 5 5 5 5 5 5 5 2 2 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 2 1 0 1 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 3 3 3 3 3 3 4 4 3 3 2 2 1 1 1 1 1 1 1 0 0 1 1 1 1 0 1 0 0 1 1 1 1 2 2 1 1 2 2 2 1 2 2 1 1 1 1 1 1 1 0 1 1 1 1 1 2 2 2 2 1 0 0 0 1 1 1 0 1 1 2 2 1 2 2 2 2 2 3 3 3 3 3 4 4 4 5 6 6 6 7 8 8 8 9 10 10 11 11 11 10 10 10 11 11 12 10 9 8 9 10 11 10 9 8 8 8 9 9 9 9 9 8 8 7 7 6 6 5 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 6 5 5 5 4 4 4 4 4 4 4 4 3 3 3 3 3 3 4 5 4 4 3 3 2 2 2 2 2 3 3 3 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 1 2 2 1 2 2 1 1 2 1 1 1 0 1 1 1 2 1 1 1 1 0 1 1 2 2 2 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 2 2 3 3 2 2 2 2 3 4 4 5 6 6 6 6 7 7 8 8 8 9 10 11 11 11 10 10 10 11 11 12 11 10 9 10 10 11 11 10 9 8 8 8 9 9 9 9 8 7 7 6 5 4 4 3 2 3 3 4 4 5 5 5 4 4 3 3 4 4 4 4 5 5 5 5 5 5 5 6 6 5 4 4 3 3 4 4 4 4 4 4 4 4 3 3 4 4 5 5 4 3 2 1 1 2 2 2 3 3 3 3 3 4 4 5 5 5 5 5 5 5 5 5 5 5 6 1 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 2 2 2 2 1 1 1 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 1 2 2 2 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 2 1 1 1 1 1 0 0 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 4 4 3 3 2 3 5 7 8 8 8 8 7 7 7 7 7 8 9 11 11 12 12 12 11 11 11 12 12 12 11 10 10 10 11 11 11 10 10 9 9 9 9 9 8 7 6 5 4 4 3 3 2 2 3 3 3 3 3 4 4 4 4 3 3 3 4 4 4 5 5 5 5 5 5 5 5 4 4 3 4 4 4 4 4 5 5 5 5 5 5 5 5 5 4 4 3 2 1 1 1 1 2 2 3 3 3 3 3 4 4 5 5 5 5 5 5 5 5 5 5 6 6 6 1 1 2 2 2 2 2 2 2 3 3 3 3 3 2 1 0 0 1 2 3 5 4 4 2 1 1 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 1 1 2 2 2 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 2 2 1 1 2 1 1 1 0 1 1 0 1 2 2 1 1 1 1 0 1 1 1 0 1 1 1 2 2 2 2 2 2 2 3 3 4 5 5 5 5 5 7 8 10 10 9 8 8 8 8 7 7 7 8 9 10 11 12 12 12 12 12 12 12 12 12 12 11 11 10 11 11 11 11 11 10 10 9 9 8 7 6 5 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 4 4 4 4 4 4 5 5 5 4 3 3 3 4 4 5 5 5 6 6 6 5 5 5 5 4 3 2 2 1 1 1 1 1 2 2 3 4 4 4 4 4 5 5 6 5 5 5 5 5 5 5 5 6 6 6 6 2 1 1 1 1 1 0 1 1 1 2 3 4 4 4 3 3 4 5 6 6 7 6 6 5 4 4 4 4 4 4 3 3 3 3 2 2 3 4 4 4 4 3 3 3 4 3 2 1 1 1 2 2 2 1 1 1 1 1 1 1 1 2 2 2 2 2 2 1 1 1 1 1 2 2 1 1 1 1 2 2 2 2 1 1 0 0 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 0 2 2 2 3 2 3 3 4 5 6 6 7 7 8 8 9 9 9 9 8 8 8 8 8 7 7 7 8 9 10 11 12 13 13 13 13 13 13 13 12 12 11 11 11 11 11 11 11 10 10 9 9 8 7 5 4 4 3 3 3 3 3 3 3 3 2 2 2 2 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 3 3 3 4 5 6 6 6 6 6 6 5 4 4 3 2 2 2 2 2 1 1 1 2 2 3 4 4 4 4 4 5 5 5 5 5 5 4 5 5 5 5 5 5 6 6 6 2 2 2 1 0 0 0 0 1 1 1 1 2 3 4 4 5 5 5 5 4 4 4 6 7 7 6 6 5 5 4 4 4 4 4 3 3 3 3 3 3 3 2 2 3 3 3 2 1 1 1 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 1 1 1 1 1 2 2 2 2 1 1 1 2 2 2 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 2 2 1 1 1 1 2 2 3 4 4 4 4 5 6 7 8 8 8 8 8 9 9 9 8 8 7 7 7 7 7 7 7 7 8 10 11 12 13 13 13 14 14 14 14 14 13 13 12 12 11 10 10 10 10 10 9 8 7 6 4 4 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 5 6 6 6 5 5 5 5 4 3 2 2 2 3 2 2 2 2 1 1 2 3 4 4 5 5 5 5 5 5 4 5 5 5 4 4 4 5 5 5 5 6 6 6 6 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 3 4 5 5 5 4 3 3 2 2 2 3 3 2 2 2 3 3 3 2 1 1 2 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 0 1 1 1 1 1 1 1 1 2 1 2 2 1 1 2 1 1 1 1 1 1 2 2 1 0 1 1 1 0 0 1 1 2 1 1 1 1 1 1 1 2 2 2 3 4 5 5 5 5 6 8 9 9 10 10 10 10 10 10 9 8 8 7 7 7 6 6 6 7 7 8 9 11 12 13 14 14 14 15 15 15 15 15 14 14 12 11 10 10 9 9 9 8 6 5 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 4 4 5 6 6 6 5 4 3 3 3 3 3 3 2 3 3 3 3 2 2 1 0 1 2 4 5 5 6 5 5 4 5 4 4 4 4 4 4 4 4 5 5 5 6 6 6 6 6 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 2 3 3 3 2 2 1 1 1 2 2 1 1 1 1 2 3 2 1 1 2 3 3 2 1 1 2 2 2 2 2 2 2 2 2 3 2 2 1 1 1 1 1 1 2 2 2 2 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 0 0 1 2 2 1 2 2 2 1 1 1 1 1 1 1 2 2 3 4 5 6 6 7 8 8 9 10 11 11 12 12 12 12 12 11 10 8 8 7 7 6 6 6 7 8 8 9 9 10 12 13 14 15 16 16 17 16 16 15 14 13 12 10 9 9 8 8 7 6 5 4 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 4 5 5 5 5 4 4 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 1 0 2 3 4 5 6 6 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 6 6 6 6 Wind_Direction 352 351 349 349 349 349 350 351 352 352 352 352 352 353 352 353 356 358 360 2 3 4 4 4 4 3 360 356 4 57 76 67 31 336 43 83 76 62 47 50 65 91 121 192 243 256 264 276 298 319 336 357 36 67 82 90 90 84 75 73 83 86 29 30 42 45 45 58 73 84 148 261 269 268 64 53 48 29 356 29 47 58 68 44 92 115 138 284 319 75 84 25 352 2 50 75 51 352 349 67 66 26 16 41 65 76 41 258 156 103 64 9 326 204 164 139 111 286 255 138 115 77 311 141 97 84 298 260 170 130 352 22 126 220 243 232 170 204 242 240 242 245 235 222 217 229 248 238 200 176 162 145 119 94 70 42 63 88 93 93 269 284 312 322 314 303 286 292 107 84 72 58 45 19 325 269 263 280 289 298 301 296 297 306 310 301 292 291 301 313 331 44 83 91 100 106 97 70 39 7 336 332 353 56 103 116 116 111 110 143 186 194 181 159 150 154 165 175 181 192 203 181 136 132 233 255 279 20 24 357 286 298 337 24 77 232 256 265 272 351 350 349 349 349 349 351 352 352 352 352 352 352 353 353 355 357 359 1 2 4 5 6 6 7 8 8 10 30 82 85 64 309 352 75 75 71 65 52 53 77 108 162 243 270 279 285 290 299 311 328 355 54 85 90 94 96 96 89 76 62 51 37 31 38 47 56 73 106 204 253 295 334 36 74 68 45 351 351 41 60 45 7 14 53 82 95 306 340 61 87 79 19 2 23 71 84 304 331 59 75 62 33 47 48 73 226 229 205 118 95 35 332 289 202 159 140 216 243 126 104 83 299 268 116 98 335 285 232 182 192 207 191 222 253 231 200 210 241 265 273 265 250 233 223 228 245 240 200 175 157 136 113 84 52 19 56 68 58 342 298 56 37 348 308 290 295 344 82 74 69 104 77 26 347 320 310 318 316 323 329 330 333 335 332 327 324 331 348 355 3 7 8 10 44 91 87 55 9 322 283 280 286 312 92 129 144 160 171 184 194 190 170 150 146 155 166 174 174 171 173 149 123 121 232 259 263 53 266 239 222 226 349 346 268 246 254 264 274 351 349 349 349 350 351 352 352 352 352 352 352 353 352 353 356 358 360 2 4 6 7 7 8 11 16 20 31 54 91 131 197 211 92 79 82 83 86 84 101 115 131 202 283 309 320 321 323 321 326 342 17 77 90 90 86 90 100 99 87 54 42 43 35 35 45 61 78 53 310 320 347 10 50 87 102 108 306 324 64 85 80 309 113 44 4 353 354 11 38 54 71 48 355 7 57 84 300 333 36 62 66 66 86 59 286 278 268 243 147 129 133 268 284 269 183 151 155 165 116 97 91 268 262 107 87 39 317 291 226 191 187 168 102 317 295 251 210 182 309 294 272 261 250 240 241 254 243 208 168 153 136 114 94 64 268 82 71 41 313 262 124 76 320 273 265 303 66 72 33 293 226 112 91 33 314 309 314 319 335 343 341 332 337 343 342 339 342 353 4 2 348 336 340 3 39 64 77 237 233 229 250 265 264 232 181 178 181 178 166 143 118 101 103 118 140 151 151 136 120 127 127 104 86 290 251 216 190 195 193 167 136 104 276 262 260 266 270 275 350 349 349 350 351 352 352 352 352 352 352 352 352 353 355 355 358 360 2 4 6 8 8 9 14 22 30 46 72 132 159 162 128 84 77 78 86 108 138 153 147 138 161 325 358 355 342 339 339 348 11 55 83 93 95 90 90 96 104 122 136 129 127 129 101 66 70 86 80 339 343 352 3 35 73 91 92 308 323 19 78 119 156 153 104 29 14 26 33 24 6 26 358 321 4 57 75 331 334 47 60 104 156 133 119 295 332 16 19 357 162 151 158 182 258 124 112 119 120 104 94 119 232 243 124 94 75 327 307 287 183 140 108 78 358 313 287 209 141 128 279 265 265 266 264 253 253 243 200 159 150 137 114 103 100 255 138 104 92 258 228 153 121 220 253 235 168 86 66 345 300 306 75 98 111 187 317 332 345 347 344 338 333 343 353 351 347 347 355 359 355 333 326 342 9 31 45 75 167 226 226 235 240 243 235 215 190 164 112 91 83 77 73 69 85 115 129 120 95 69 44 56 69 68 278 251 219 193 185 171 149 138 165 225 245 257 264 268 267 350 349 350 351 351 352 352 352 352 352 352 353 353 354 355 356 358 360 2 4 5 7 6 9 15 23 34 55 118 145 144 132 106 81 77 78 91 139 162 138 124 111 161 187 124 44 346 327 330 345 12 38 65 88 98 95 88 88 98 141 164 154 149 154 159 140 126 144 147 64 5 3 10 31 42 39 8 331 335 359 34 67 111 118 104 82 50 55 66 41 293 329 22 337 340 44 124 151 93 107 127 187 158 120 115 342 350 45 17 313 293 122 118 129 185 115 91 88 87 100 118 159 211 208 137 101 101 22 305 295 218 163 155 155 174 251 269 239 156 164 254 259 272 300 313 294 262 253 202 147 149 137 118 111 121 235 218 155 175 234 223 148 128 196 239 225 177 104 85 284 274 295 31 86 94 74 24 15 10 352 342 343 342 346 349 351 349 352 357 357 344 331 330 344 2 12 17 23 11 267 226 214 221 237 261 298 352 73 100 100 87 76 63 61 61 58 58 51 52 36 4 21 58 72 269 259 234 191 181 168 152 142 177 214 230 240 250 256 263 349 349 351 351 351 352 352 352 352 352 353 354 355 355 355 357 359 360 2 4 4 5 5 7 13 21 31 59 108 138 139 133 108 95 91 96 120 183 138 112 108 120 228 228 161 151 290 324 330 352 8 18 23 45 73 86 84 83 95 170 174 146 140 141 142 140 139 156 144 118 106 72 51 61 55 35 9 359 357 359 5 14 26 45 80 100 110 129 171 181 176 115 50 349 310 329 107 115 116 121 144 157 101 75 82 185 170 132 183 240 102 74 80 83 193 126 101 87 84 151 141 153 184 184 144 126 134 158 253 290 283 243 211 192 181 203 232 230 190 198 245 265 283 314 325 314 293 279 211 139 138 137 120 114 128 205 238 207 192 209 217 176 137 200 222 212 147 99 100 182 234 251 64 77 73 64 45 48 45 17 359 352 352 335 335 339 343 348 345 336 325 322 324 331 339 342 336 298 235 225 214 200 200 269 302 321 329 161 153 142 131 133 145 125 91 60 31 24 26 5 326 4 62 101 260 265 247 189 170 159 147 149 188 225 235 243 248 253 258 350 350 351 350 350 351 351 352 352 353 353 354 354 355 356 358 359 360 2 4 3 4 5 7 13 16 25 43 87 128 142 144 110 101 106 121 156 173 127 104 83 53 24 20 357 11 29 9 352 357 6 14 18 31 56 78 88 105 148 178 169 140 135 145 151 148 143 156 188 153 144 143 141 121 105 82 34 7 7 15 18 16 9 344 321 167 162 170 181 175 153 130 111 267 281 345 45 45 72 129 139 121 84 52 312 243 207 192 195 182 113 87 77 31 306 83 97 97 99 43 54 61 29 20 93 149 157 158 153 311 317 299 269 238 204 183 255 258 226 222 246 267 283 314 324 314 308 294 228 151 126 121 105 105 119 137 231 229 211 204 200 192 143 158 166 137 98 84 86 149 211 215 144 105 102 108 126 127 115 91 44 356 325 276 287 297 310 305 291 286 280 281 292 297 295 275 241 225 226 268 320 348 11 304 324 332 301 240 203 165 156 168 176 161 132 115 108 263 218 211 218 73 91 129 249 263 262 167 116 122 140 169 206 230 247 256 259 259 262 351 350 349 349 349 349 350 351 352 353 355 355 355 356 357 358 359 360 1 3 4 4 6 9 13 18 23 30 56 114 133 130 104 98 111 132 144 131 106 91 70 58 49 28 3 355 24 28 3 353 5 20 27 30 50 77 94 111 149 156 147 139 140 147 144 137 138 146 177 169 134 125 113 96 87 83 59 348 352 100 97 56 334 308 309 301 185 175 176 169 143 125 115 243 261 243 101 104 157 155 136 110 98 101 255 249 225 202 194 124 108 103 100 64 334 52 82 79 59 36 33 34 6 352 353 356 148 144 128 112 326 299 303 334 19 29 358 313 280 262 267 284 295 310 321 310 299 283 243 167 144 115 104 100 106 147 211 234 225 211 190 155 122 118 141 126 97 83 77 212 188 182 160 136 123 136 162 165 156 153 167 181 185 199 217 221 221 230 232 230 219 204 202 210 225 229 233 312 336 319 296 277 261 321 342 298 245 237 229 176 168 174 177 166 155 154 171 194 188 177 160 137 137 175 242 258 261 95 98 121 174 207 214 222 239 253 262 266 276 351 350 349 349 349 349 351 352 353 354 355 355 356 357 358 359 359 360 1 1 1 3 6 10 14 20 23 26 30 91 120 111 100 95 104 132 115 91 78 72 66 64 76 67 358 336 3 28 15 8 13 26 26 24 38 75 90 94 77 106 107 107 114 122 124 126 129 137 152 153 124 119 94 66 59 59 24 276 226 113 103 84 331 325 334 343 351 11 102 167 125 104 86 354 269 208 155 141 144 132 121 120 126 155 200 251 22 69 83 97 93 90 87 58 26 45 63 52 38 33 30 27 359 340 334 342 348 5 106 133 184 275 299 340 26 37 7 317 303 298 302 310 310 302 269 261 275 283 290 124 151 132 126 126 155 188 207 213 211 193 166 136 116 126 127 107 97 104 173 213 182 141 127 118 133 148 170 173 160 158 175 191 195 203 208 209 206 209 224 227 213 196 149 124 102 312 340 351 329 294 275 261 299 14 234 228 229 236 253 251 165 160 156 149 138 134 139 151 143 120 111 127 160 212 243 251 247 157 133 177 220 229 226 224 228 245 263 276 286 351 350 350 350 350 351 352 352 353 355 355 357 358 358 359 359 360 360 1 1 4 6 8 13 16 19 22 24 29 59 106 99 95 96 106 119 97 82 64 60 83 108 122 124 266 310 340 24 34 20 17 23 21 14 27 57 69 54 26 34 65 73 81 93 114 134 137 137 142 152 158 150 116 81 59 19 313 308 29 77 87 86 38 353 348 332 326 334 339 22 98 94 77 7 304 251 132 120 104 91 78 84 92 115 106 70 35 28 45 67 77 70 58 47 47 57 68 52 26 20 22 16 342 322 319 330 344 359 33 133 162 226 260 336 51 59 73 298 292 294 299 310 306 286 264 253 284 313 345 43 342 148 137 139 157 188 205 196 188 171 149 127 113 112 97 91 91 100 126 161 72 77 82 147 170 171 178 174 172 176 190 205 207 216 218 219 220 229 243 252 253 269 22 52 10 331 316 312 293 279 277 281 325 278 230 227 225 223 222 204 120 91 85 85 86 87 91 91 86 76 72 226 215 222 236 245 235 132 157 239 246 246 243 235 230 239 258 276 283 351 350 350 350 351 352 353 353 354 356 356 358 359 359 359 360 360 360 1 2 5 7 11 16 17 18 21 25 32 53 91 101 100 103 91 84 85 95 111 167 170 138 121 108 107 318 346 33 45 17 3 7 18 29 47 62 61 36 8 15 46 57 59 74 98 115 116 120 133 162 181 169 132 90 72 298 304 351 45 58 69 106 132 147 281 301 313 324 338 6 75 91 82 5 327 326 108 104 91 81 74 49 35 53 87 73 14 349 15 43 58 39 24 31 62 80 83 75 39 358 324 298 269 258 300 314 329 345 3 53 115 149 144 104 77 102 184 209 269 272 259 232 241 279 290 298 318 331 357 11 357 345 43 131 147 169 191 184 173 157 130 107 95 90 84 85 84 86 91 72 39 20 303 226 198 178 173 176 185 194 204 214 219 221 219 217 219 237 252 260 255 243 170 72 8 302 291 281 272 271 276 283 293 275 251 233 221 211 198 159 127 122 127 122 123 116 113 108 111 131 236 240 230 219 212 203 138 67 302 261 252 249 246 242 235 236 245 260 270 351 351 351 351 351 352 353 353 355 356 356 359 360 360 360 360 360 360 1 4 8 12 14 15 15 17 20 24 33 52 91 111 114 105 85 66 72 99 147 156 128 91 86 91 108 251 43 70 72 336 326 359 22 35 51 70 73 42 19 29 48 58 45 54 65 78 90 111 144 190 193 165 122 98 120 253 211 83 61 45 22 325 187 234 275 303 326 338 343 349 33 86 86 35 337 334 35 86 91 98 103 75 22 23 68 82 352 319 40 62 50 12 340 3 60 77 77 68 64 342 320 309 287 269 281 309 323 338 351 3 17 91 84 92 211 231 214 203 251 275 270 247 232 267 286 296 313 357 7 35 35 6 6 11 141 169 174 171 156 138 106 87 73 74 81 85 80 66 67 74 39 331 289 251 210 177 153 168 201 213 217 222 229 227 215 207 215 236 251 259 248 228 168 118 148 266 275 275 270 266 268 277 282 275 262 245 225 220 187 145 165 178 175 159 149 158 170 169 172 195 226 239 227 194 144 105 73 353 284 266 256 250 242 235 233 227 227 239 253 351 351 352 352 353 353 353 353 355 357 358 359 360 1 1 1 1 1 3 7 10 13 14 13 15 17 21 23 29 50 91 112 114 108 86 58 44 67 91 91 72 72 79 115 183 182 127 104 151 237 342 32 29 26 32 47 56 38 34 45 55 59 59 64 70 74 96 140 171 194 188 127 101 94 151 221 160 121 113 128 303 345 345 313 308 327 40 28 340 334 358 85 111 110 299 295 329 80 108 126 114 86 24 15 48 85 138 167 100 94 91 293 284 337 45 59 58 9 251 130 56 322 311 306 328 348 353 337 330 346 12 48 24 239 239 241 222 193 231 283 287 275 250 260 289 296 309 9 44 51 60 35 10 347 326 183 166 154 136 113 95 70 39 59 75 76 68 41 31 59 40 313 285 261 225 173 142 166 236 238 233 230 240 245 233 220 229 248 259 267 264 263 260 202 198 233 260 270 270 266 260 264 265 265 261 251 238 239 221 192 191 185 168 151 153 169 184 194 202 213 229 237 216 143 108 90 74 294 273 269 262 251 234 219 210 153 137 175 247 352 352 352 353 353 353 353 354 356 358 359 360 1 2 3 3 2 3 6 10 12 13 13 14 15 19 19 24 29 48 96 111 105 99 91 68 11 25 54 74 76 72 67 243 212 162 129 127 202 194 155 105 61 12 359 12 29 31 36 38 39 45 57 70 84 79 92 138 149 164 138 99 97 103 183 208 148 120 138 160 157 64 16 345 348 24 70 73 326 323 339 44 101 125 198 260 299 44 72 84 91 82 35 359 15 59 64 50 67 94 133 196 213 164 91 81 101 208 210 124 77 326 314 327 359 19 19 306 314 348 22 17 298 269 269 274 253 196 216 274 289 293 301 312 321 329 338 353 8 28 45 52 14 329 329 9 118 116 97 87 74 35 7 58 79 86 79 51 38 70 44 287 273 263 225 148 130 190 246 250 245 238 241 250 247 242 247 261 270 276 278 281 282 264 222 215 232 250 259 261 255 241 245 252 256 255 248 239 229 212 197 178 159 151 159 177 199 212 219 224 234 232 200 140 113 108 183 223 249 259 263 261 240 159 118 103 95 240 267 353 353 353 353 354 353 354 355 356 359 360 1 2 3 3 4 4 6 8 10 11 12 11 12 16 17 20 22 27 48 91 98 96 94 87 68 19 12 58 75 75 70 43 261 226 164 153 190 222 197 145 125 136 175 269 354 48 53 45 33 13 10 39 72 87 81 44 66 64 56 52 84 95 106 226 216 105 99 109 132 122 99 59 8 19 40 63 84 291 319 347 7 31 82 128 269 357 40 41 45 71 87 50 332 346 20 29 22 27 52 112 160 174 159 148 155 165 165 146 108 77 312 306 328 359 10 358 304 321 8 42 11 279 282 295 310 301 255 218 306 310 314 326 346 359 2 343 326 340 2 22 50 240 294 324 359 54 77 75 70 38 357 14 64 80 103 130 143 132 118 147 248 261 260 226 125 108 167 260 263 263 254 244 247 246 247 250 260 270 276 279 279 276 270 256 229 223 231 243 253 255 248 245 247 250 253 248 241 232 213 188 171 167 169 177 192 209 222 225 226 234 231 200 161 153 186 216 221 232 246 258 265 272 277 268 303 324 296 281 354 354 354 354 353 354 355 356 357 359 360 1 2 4 4 5 6 7 9 10 11 12 10 11 15 19 20 26 33 49 84 97 91 94 91 72 25 14 61 91 113 138 202 248 237 82 43 258 249 194 106 103 116 160 212 194 129 110 103 98 277 300 33 82 96 96 83 77 72 45 42 75 96 103 266 80 87 90 91 99 104 96 79 48 53 54 64 194 208 336 22 350 339 359 22 26 28 42 24 13 45 95 91 340 342 2 13 359 348 355 12 124 175 173 168 170 163 140 120 103 96 251 279 317 359 3 359 337 340 359 53 190 256 292 340 352 328 308 336 22 357 305 312 341 13 19 321 296 316 344 346 289 243 291 336 6 45 80 82 70 7 346 15 60 77 111 131 131 114 108 132 221 255 258 220 129 108 243 267 272 276 277 270 262 259 260 261 264 268 273 274 276 277 272 267 259 242 236 241 248 253 255 253 250 248 244 242 239 233 214 185 173 180 188 191 201 214 228 234 233 231 227 208 184 181 208 228 230 233 242 255 267 276 283 284 289 291 284 279 354 354 355 355 355 355 356 356 358 360 1 2 2 4 4 5 7 10 12 12 13 11 10 11 18 21 26 36 48 79 105 104 98 101 108 85 25 14 60 97 125 159 183 184 139 101 193 269 281 75 80 81 81 211 222 197 167 148 150 174 219 249 75 91 104 107 100 88 77 50 42 73 97 112 251 104 97 96 91 82 98 96 91 79 86 82 260 232 205 170 138 291 312 345 7 19 26 38 24 3 19 82 102 64 332 334 337 327 312 312 305 279 218 198 189 182 158 124 110 101 120 220 243 290 29 33 26 17 348 328 294 232 269 302 24 64 277 292 317 35 151 239 295 338 15 42 308 301 316 330 329 305 284 334 7 30 54 73 78 70 25 3 22 54 83 138 129 111 95 84 128 213 247 251 222 165 160 221 260 270 280 290 284 277 273 270 267 267 266 266 270 274 273 263 260 261 263 265 260 254 247 250 253 252 248 242 238 235 230 216 194 188 196 202 201 206 217 230 239 237 232 223 210 196 196 216 234 238 240 245 253 265 272 277 281 282 281 275 272 355 355 355 355 356 356 356 357 359 1 2 2 3 4 5 7 9 11 13 12 12 11 10 14 19 23 31 55 81 100 104 100 95 99 106 100 44 6 33 77 115 124 143 131 124 139 211 261 290 78 84 91 91 251 238 201 181 181 184 189 194 157 91 81 102 107 100 88 75 56 30 64 101 116 193 77 98 105 106 73 100 106 105 103 111 184 251 245 223 194 181 197 318 359 7 11 21 45 36 3 3 64 105 129 284 304 304 299 291 279 269 255 236 215 183 156 132 112 108 113 143 192 204 183 124 85 61 41 342 309 304 306 313 293 249 196 205 269 309 279 203 193 226 5 23 47 304 316 332 342 342 334 336 8 29 45 59 68 69 63 41 19 15 25 193 190 137 100 80 24 269 229 231 238 226 162 137 192 258 273 286 292 286 277 268 261 258 260 261 264 270 273 261 243 247 255 274 304 284 264 246 239 241 244 244 241 237 233 228 216 204 203 208 212 212 211 218 230 242 243 238 227 215 207 209 222 234 241 245 247 251 260 266 271 273 275 275 272 270 356 356 356 357 356 356 358 359 1 2 2 3 3 5 7 8 11 13 14 14 15 15 13 15 21 24 38 68 95 100 100 96 81 81 100 112 127 240 29 50 78 91 85 78 64 44 352 336 11 64 100 123 149 209 217 198 198 216 222 204 130 104 91 86 91 97 90 79 70 53 20 37 94 102 56 21 65 94 115 147 149 136 121 132 197 249 261 266 262 251 183 166 124 58 22 2 10 33 39 317 325 20 111 131 150 226 256 266 266 262 254 249 243 220 164 129 115 122 122 125 127 138 202 210 176 149 126 126 226 274 296 317 320 289 253 215 181 172 291 289 264 210 168 115 35 352 226 294 345 348 332 316 319 346 26 52 66 73 71 63 48 22 349 334 312 281 93 91 81 357 291 253 214 188 157 43 92 101 320 308 304 297 284 275 265 257 253 254 259 272 289 289 226 225 236 254 284 291 269 264 257 243 239 242 245 246 240 232 224 215 210 210 214 219 219 216 218 229 242 247 247 237 224 216 216 227 235 243 248 252 256 262 266 270 273 274 273 273 272 356 357 356 356 357 358 360 360 2 2 3 4 4 6 8 9 11 13 14 14 16 14 17 19 25 31 48 75 95 95 95 91 82 73 74 110 137 140 75 56 69 101 108 99 67 14 358 5 9 32 76 113 134 151 163 182 220 236 243 22 77 81 86 81 78 75 73 72 67 52 13 4 76 91 58 359 359 92 141 160 162 149 136 144 163 232 274 288 309 348 4 41 138 118 85 15 355 350 309 285 303 358 76 109 131 177 223 243 256 259 251 243 236 212 159 133 124 132 125 116 116 138 238 223 202 181 170 175 188 200 231 294 306 290 270 222 177 160 184 298 310 269 188 159 162 232 221 181 172 188 225 251 297 318 351 30 60 75 80 68 64 41 321 339 334 319 31 86 91 56 282 269 182 143 122 56 53 77 357 314 303 292 283 277 270 264 262 265 276 324 35 66 108 182 210 239 311 308 283 271 269 260 253 250 252 251 245 231 219 215 216 218 222 230 229 224 222 228 241 251 255 248 233 223 226 237 244 249 255 262 262 262 265 268 271 272 272 273 274 357 358 358 358 359 360 1 2 3 4 5 5 7 7 9 10 12 15 17 16 16 17 20 23 29 38 64 82 86 77 86 95 91 79 40 44 127 139 136 156 194 189 171 153 140 144 211 124 60 37 45 73 94 104 111 193 284 325 44 60 61 68 74 75 73 72 70 72 73 56 339 349 76 94 91 320 292 239 145 139 146 148 148 143 149 166 215 269 327 7 19 348 263 129 116 124 320 317 311 302 307 15 67 88 103 153 220 243 256 259 251 226 220 204 149 129 124 132 126 124 140 198 229 222 208 189 185 191 191 171 170 190 236 258 250 198 170 150 125 69 340 310 261 170 155 226 258 225 210 204 197 202 321 326 332 349 17 50 71 75 102 202 167 93 356 313 326 75 100 139 265 269 172 129 118 124 95 91 35 313 296 284 278 276 274 280 293 304 323 5 45 57 74 119 149 157 263 293 281 277 279 277 270 264 258 253 245 231 221 218 221 230 241 247 245 235 227 230 247 264 266 259 246 232 251 261 262 260 260 260 258 257 258 261 266 269 270 271 272 359 359 360 360 1 2 3 4 5 6 7 7 8 8 10 13 14 16 18 19 19 19 20 27 36 45 72 86 78 65 61 79 91 86 35 339 73 125 143 175 208 188 176 163 159 162 175 161 131 82 47 53 67 67 50 9 6 33 56 64 67 77 78 68 72 75 77 73 68 357 332 358 69 97 110 216 275 289 104 113 124 137 150 151 158 175 187 191 161 67 53 293 260 183 144 162 171 193 322 317 317 12 73 85 110 201 225 240 251 255 249 209 184 172 138 118 118 122 133 141 165 207 227 221 206 194 192 196 191 172 171 188 210 222 212 185 168 146 122 105 14 299 274 214 172 164 309 306 288 254 194 143 118 308 307 329 355 23 50 44 325 228 128 100 56 298 306 29 91 124 254 261 226 122 118 122 111 75 35 317 291 282 277 276 278 292 316 323 331 347 4 17 33 69 108 138 200 247 260 271 277 279 276 272 269 265 259 247 231 219 217 231 252 257 253 241 227 233 256 257 255 253 240 225 235 252 258 255 248 249 251 253 256 263 270 271 273 271 269 360 1 2 2 3 4 6 7 8 8 9 9 9 10 11 14 16 17 19 21 23 22 24 29 36 48 75 101 86 65 57 72 91 104 64 335 6 75 131 174 190 174 164 192 163 154 154 151 134 119 96 69 59 39 13 3 9 25 39 51 60 64 56 47 60 84 87 76 58 28 7 16 47 84 94 41 283 298 59 91 96 107 130 155 177 209 203 185 151 127 202 253 231 182 155 158 162 147 172 281 298 31 98 118 186 213 217 219 228 236 243 148 107 124 118 104 99 101 106 129 163 222 238 225 200 193 191 189 189 189 188 195 204 210 203 186 168 153 139 133 173 251 254 221 178 150 113 305 296 273 207 154 136 193 297 319 347 8 26 31 5 11 39 83 113 298 325 28 77 111 261 269 290 84 86 86 79 60 30 319 296 292 287 284 289 303 332 337 324 322 319 325 342 14 39 77 192 225 245 260 271 275 275 276 276 276 271 262 246 225 208 209 241 255 254 237 207 214 228 231 231 227 213 193 204 226 242 248 248 250 255 270 287 289 289 280 274 268 264 1 2 3 5 6 8 9 10 11 11 10 10 11 12 13 15 17 19 22 25 25 27 30 33 36 48 75 110 95 73 66 72 91 118 108 31 357 102 173 182 166 156 139 243 192 148 140 142 138 129 111 88 63 11 340 355 11 22 26 28 45 55 61 64 80 112 100 83 57 48 8 2 35 78 100 226 260 260 64 68 56 342 161 152 192 234 225 192 151 127 193 279 226 175 168 171 167 157 168 221 230 175 139 159 193 207 206 196 189 168 113 35 44 64 85 91 87 75 60 77 218 245 245 234 207 195 191 188 190 193 198 203 203 203 198 191 177 166 159 164 186 214 239 225 189 156 149 226 265 255 213 158 114 82 326 331 351 358 4 35 39 9 325 161 131 354 352 28 74 119 259 280 6 48 50 48 55 66 44 313 296 295 296 294 289 293 342 344 316 309 309 312 326 354 348 332 300 269 258 263 267 270 272 274 276 274 270 258 240 214 193 188 205 229 235 220 187 195 210 220 220 201 181 183 196 212 230 247 252 259 270 297 314 301 287 270 259 258 260 3 5 6 7 9 11 13 13 13 14 13 13 13 13 14 15 17 20 23 27 28 31 35 42 42 52 78 106 111 108 112 124 111 104 97 59 329 267 172 138 124 115 128 228 243 132 122 122 124 117 111 96 92 275 292 4 32 35 26 12 38 83 101 120 138 116 88 72 54 38 309 289 266 126 132 208 255 208 126 91 64 257 222 194 198 217 220 181 130 104 67 328 284 192 187 198 195 181 181 196 197 184 172 173 187 199 203 198 174 134 99 16 352 17 59 71 72 64 240 226 235 247 247 239 220 198 193 191 191 194 201 206 203 194 188 185 190 185 181 184 192 205 225 235 222 181 169 191 232 236 212 148 109 84 251 192 170 352 335 102 156 190 221 183 113 72 9 44 91 118 234 294 5 21 11 359 34 66 67 321 289 284 279 277 272 265 268 325 308 310 313 320 330 343 341 328 317 309 297 282 274 271 269 266 264 261 255 239 215 193 190 190 194 205 217 215 200 206 220 231 235 162 168 186 197 206 216 227 241 255 270 290 297 278 263 256 252 250 254 5 7 8 10 13 14 15 16 16 16 15 15 15 14 15 16 17 20 23 27 30 35 38 45 53 68 91 106 112 120 127 131 108 97 85 69 299 284 107 96 75 69 56 14 11 64 97 100 100 103 103 99 64 285 295 44 72 82 41 336 24 64 60 54 66 71 72 56 17 301 254 247 218 160 148 190 243 210 155 153 193 228 235 216 209 207 182 129 105 95 75 11 321 303 167 216 232 218 200 193 188 185 181 176 172 174 185 185 160 129 116 41 331 359 42 57 44 281 251 238 237 241 241 233 218 199 193 193 193 197 206 210 207 193 183 187 201 208 203 197 201 207 225 238 235 212 190 189 210 216 191 159 136 145 182 166 151 151 243 190 189 211 239 41 86 100 248 243 139 127 172 41 38 22 342 328 22 57 41 328 283 275 267 261 262 266 269 228 295 311 321 323 326 338 342 334 324 316 310 298 288 279 265 250 243 236 226 213 199 191 198 206 212 217 236 289 291 274 266 263 257 213 195 200 204 203 189 186 200 232 249 258 255 251 250 249 249 248 250 7 9 11 14 16 17 19 19 19 19 17 17 17 16 16 16 16 17 23 27 32 35 37 42 56 85 103 103 100 91 85 84 98 103 122 152 243 309 53 78 72 45 29 17 19 34 74 94 94 101 103 107 92 298 311 69 98 115 80 50 41 38 33 39 63 76 81 74 326 283 266 245 222 170 143 165 208 233 190 163 177 207 234 235 235 209 143 121 111 102 80 11 330 326 11 357 319 289 247 209 198 195 186 173 150 146 159 164 143 113 94 53 353 354 24 49 320 269 255 244 240 236 234 223 204 192 186 197 201 201 207 212 208 198 191 194 201 207 201 194 211 230 236 243 243 229 214 201 198 194 181 168 160 156 154 154 149 164 190 170 170 258 308 351 69 170 231 231 157 113 125 112 98 77 290 268 128 85 50 322 287 275 272 272 278 287 297 313 321 327 330 328 326 344 351 343 332 321 311 299 287 270 243 224 216 200 184 177 178 191 235 260 261 269 291 310 296 291 289 284 273 251 233 227 219 197 157 136 146 207 223 223 230 237 244 251 259 273 295 9 11 15 18 20 21 22 22 21 20 19 19 18 17 17 17 17 18 20 24 28 32 36 45 64 91 108 105 99 100 97 99 104 104 126 157 193 352 64 99 97 77 44 44 23 30 52 82 94 105 110 112 110 318 339 39 61 66 64 79 70 54 36 39 75 96 109 144 209 235 238 226 226 240 137 141 157 266 342 115 144 173 200 218 267 193 138 125 120 111 101 35 310 297 306 16 358 334 313 269 239 219 194 158 138 134 146 144 125 91 68 31 331 308 290 184 243 255 253 247 241 234 224 209 194 189 200 213 210 208 207 210 211 202 189 181 177 175 182 192 212 240 263 274 264 251 230 208 182 164 156 139 124 133 146 154 159 162 158 146 139 228 336 29 77 185 237 148 91 99 108 122 114 119 226 232 144 108 92 286 277 278 283 287 297 310 321 331 334 337 346 10 8 5 357 345 326 308 295 273 255 239 222 207 196 178 158 147 143 189 215 219 218 213 210 241 269 282 284 281 267 250 240 233 219 181 143 142 181 216 221 211 221 234 243 254 272 295 308 13 16 18 21 23 24 24 24 23 22 21 20 19 18 18 17 18 19 19 21 23 24 28 40 75 124 124 118 121 136 137 129 115 110 106 120 161 161 151 143 137 146 155 153 128 59 58 66 77 87 100 105 91 353 342 13 30 35 64 127 106 64 40 37 71 99 125 187 222 216 152 101 59 29 56 127 112 82 29 29 44 72 82 69 44 53 91 108 123 128 128 147 255 274 291 38 40 358 330 310 281 243 198 151 136 134 138 136 122 111 118 184 235 236 225 209 220 235 242 243 239 227 210 197 191 196 208 220 216 210 207 211 214 200 168 147 138 151 211 226 255 269 276 279 279 269 258 211 141 130 141 263 303 167 166 168 161 154 149 150 163 153 111 72 22 284 342 56 81 91 104 108 114 119 237 243 120 103 124 243 266 275 285 292 303 320 327 332 331 331 349 32 38 11 348 325 302 283 270 249 236 229 218 190 181 171 160 153 159 195 202 199 189 174 167 181 220 246 249 247 243 238 235 232 217 176 163 176 200 219 224 213 213 228 244 257 276 291 298 17 19 22 23 26 26 26 26 24 23 23 22 20 20 20 20 21 21 21 21 19 20 22 44 101 129 128 125 133 151 167 146 139 136 148 182 189 190 189 188 176 164 165 159 148 122 91 68 57 71 90 102 97 35 340 348 354 358 31 100 86 65 30 19 53 87 103 243 269 93 101 96 59 356 303 144 120 118 111 44 33 44 48 52 45 45 61 69 144 160 157 162 190 248 289 11 111 148 286 293 298 325 138 126 122 126 132 140 136 136 139 146 167 276 258 240 229 229 237 241 237 228 205 194 198 204 216 223 217 213 204 198 187 156 149 144 151 211 255 279 279 269 269 275 279 285 294 290 148 172 208 235 253 259 243 208 173 157 156 159 153 130 113 92 299 306 7 64 86 91 91 100 108 147 218 209 115 100 126 220 257 279 286 293 304 323 334 330 329 335 3 23 22 348 316 292 273 255 245 239 236 233 225 181 178 174 170 169 174 192 194 185 169 156 154 167 197 220 225 226 230 236 240 238 219 195 193 203 216 235 254 259 257 256 263 272 279 287 291 20 23 26 27 28 29 28 27 26 24 24 23 23 23 22 23 23 24 24 25 24 23 24 39 124 139 138 131 143 163 176 155 139 136 143 169 190 196 202 205 196 149 137 124 115 118 120 105 91 86 90 105 109 98 317 314 329 351 25 78 99 102 56 326 14 110 137 243 309 67 87 94 95 281 268 151 133 136 148 144 107 92 83 75 75 77 70 43 248 214 188 167 170 199 248 258 211 201 236 269 298 356 91 100 97 101 108 130 126 116 103 79 30 317 273 254 244 241 249 255 254 249 232 234 243 247 247 243 212 183 152 131 100 84 91 92 102 240 303 311 312 304 279 277 284 293 312 354 102 194 216 234 246 254 261 255 204 174 160 150 146 136 139 164 234 268 77 91 96 98 82 97 108 184 220 184 112 110 131 218 264 282 286 293 312 335 342 340 346 359 6 356 330 294 276 266 258 246 236 239 243 248 243 214 197 186 181 183 191 190 183 169 159 153 156 168 196 222 232 233 229 234 242 243 231 219 216 220 232 253 278 291 294 292 290 290 287 283 279 25 26 29 30 30 31 29 29 28 27 26 25 25 25 25 26 27 28 28 29 28 29 28 37 119 149 148 141 144 159 164 144 118 117 112 124 209 221 211 200 157 115 101 79 72 84 97 104 103 91 90 99 110 116 281 300 326 28 34 61 94 119 153 218 214 181 172 189 161 82 91 115 183 239 251 124 118 126 137 150 150 153 153 163 155 153 149 183 230 229 199 167 159 164 189 229 236 229 254 274 302 344 51 91 91 83 77 66 86 91 84 68 329 269 262 262 269 274 284 295 324 342 342 328 313 313 326 342 358 12 15 8 354 340 343 348 342 334 334 332 332 329 328 328 313 310 331 24 69 113 212 232 245 254 264 275 311 354 148 159 150 149 152 163 164 146 111 95 96 99 91 84 101 193 255 148 108 112 126 170 251 276 279 290 314 344 355 355 2 5 352 325 299 283 270 263 256 249 245 248 253 265 259 257 235 212 200 193 195 181 162 153 153 153 158 171 201 230 247 247 237 231 232 240 243 239 237 238 244 251 265 274 281 283 282 279 275 270 264 28 29 31 33 32 32 31 29 29 28 28 27 27 27 28 30 30 32 32 34 34 37 39 48 82 125 136 136 129 137 126 104 104 107 103 91 309 279 226 172 144 124 110 103 86 72 75 86 98 104 114 115 116 120 290 327 359 27 42 48 80 98 131 258 243 205 182 175 159 153 162 176 182 175 141 82 85 91 106 138 155 166 177 185 189 189 193 198 207 210 187 163 154 157 164 176 234 281 289 295 324 348 22 75 100 94 76 53 60 102 110 147 235 247 252 269 295 321 345 354 359 3 359 353 358 14 16 3 352 345 342 337 329 323 319 314 304 300 308 323 329 334 345 347 329 317 328 357 24 325 226 225 237 251 259 281 331 14 20 43 144 140 139 138 138 129 104 91 101 115 98 84 69 352 309 41 83 101 119 144 212 265 265 269 345 359 359 9 26 18 343 307 289 279 269 258 243 243 242 246 258 278 274 275 263 246 229 196 171 144 133 134 140 142 140 151 188 253 268 263 255 245 238 237 243 245 246 243 241 241 242 251 258 258 256 255 254 252 251 30 33 34 34 33 32 31 30 30 29 28 28 29 29 31 32 34 35 37 39 41 43 47 54 69 93 112 119 120 118 101 86 91 103 110 121 193 268 237 183 164 137 129 127 112 97 97 101 110 124 128 120 117 119 131 331 352 31 56 51 66 72 44 313 280 248 194 182 175 174 183 166 145 130 110 86 80 73 56 22 209 200 201 211 214 225 229 226 215 198 168 148 133 133 140 142 137 102 304 320 342 359 4 9 120 118 122 147 174 155 153 193 231 246 250 263 308 342 355 356 356 359 17 41 45 45 37 14 327 312 307 301 295 295 293 275 269 283 305 329 344 350 349 349 349 343 329 321 300 274 249 236 239 247 262 279 313 358 12 14 35 92 124 130 130 124 118 157 162 132 100 85 124 243 290 31 44 43 161 183 200 253 262 43 36 3 345 13 48 36 327 295 279 275 266 249 236 245 245 257 278 291 293 279 258 243 241 198 137 116 107 104 108 111 101 77 19 320 295 279 270 262 250 239 236 237 239 237 233 225 218 223 238 240 242 243 243 245 246 33 34 34 33 33 32 31 30 30 29 29 29 30 31 32 34 36 39 41 43 45 48 52 58 65 75 87 99 104 104 95 87 84 94 107 129 162 267 267 228 151 119 104 105 114 122 124 121 111 110 106 99 102 111 133 226 266 128 115 113 107 118 152 261 283 303 95 113 95 64 31 75 96 107 107 97 90 80 64 321 262 255 255 262 269 289 308 312 290 197 174 141 115 98 100 126 134 139 167 313 352 10 5 319 269 183 163 174 175 166 164 195 231 243 239 237 336 358 359 359 3 30 47 56 59 62 64 43 279 286 290 286 289 298 301 263 311 325 332 346 12 17 3 355 356 359 332 301 279 267 258 250 245 247 258 273 295 337 358 5 19 29 80 121 129 141 167 176 158 140 129 149 188 182 113 39 354 243 204 184 263 304 313 4 9 324 290 354 84 80 275 274 270 276 280 278 277 286 287 300 310 305 298 285 263 239 237 157 132 104 64 41 45 60 57 36 2 332 307 289 279 276 268 247 233 228 230 229 217 200 187 195 221 236 239 239 241 245 248 34 34 34 32 31 31 31 30 30 29 29 29 30 31 33 35 38 41 45 47 49 52 55 58 63 67 72 77 85 94 100 94 85 82 87 104 124 148 336 354 77 98 96 96 96 97 103 108 113 106 99 84 78 84 92 255 251 190 176 159 146 144 157 243 319 33 53 49 40 41 52 60 68 83 101 107 111 116 131 251 287 305 318 334 344 346 346 351 345 309 211 112 100 79 44 35 132 146 165 220 258 211 255 276 275 234 159 156 162 170 178 205 232 241 239 95 43 44 38 45 39 47 51 57 71 78 75 95 240 342 337 339 342 347 356 12 3 352 353 8 26 26 7 356 356 7 338 297 282 272 267 262 249 240 245 256 289 321 329 335 339 348 345 56 127 152 159 152 146 145 146 163 158 132 99 38 281 253 192 119 53 329 314 310 287 260 241 104 104 170 249 264 279 297 308 308 305 299 302 314 329 332 330 329 337 7 73 115 107 24 337 326 351 26 38 37 12 328 306 297 290 280 270 254 237 221 224 219 188 165 161 184 220 233 239 241 246 248 253 34 33 32 30 29 29 29 29 30 30 29 29 30 32 33 36 39 43 47 50 52 54 57 60 62 64 66 69 73 85 99 98 90 85 84 91 101 92 14 11 53 91 106 106 108 103 98 104 118 129 124 109 94 86 31 293 269 239 226 187 144 122 108 40 11 21 39 38 38 54 68 76 80 86 110 119 126 134 148 202 319 337 359 19 24 8 350 350 358 16 69 94 96 95 53 345 64 137 155 193 236 226 247 269 285 294 128 162 181 195 204 218 229 240 251 95 120 108 86 68 58 55 57 71 86 77 35 5 22 45 28 7 356 356 2 2 355 346 350 2 15 12 3 2 5 10 343 304 292 290 292 291 277 248 226 209 141 172 200 221 241 255 289 321 128 139 137 137 140 139 136 115 98 104 106 124 275 269 202 129 118 218 259 256 241 221 197 152 189 225 244 265 290 308 316 312 302 298 306 329 353 10 6 346 318 251 164 141 137 159 211 236 268 38 64 91 108 304 296 292 287 275 256 245 230 218 207 195 165 151 156 189 218 233 243 251 256 259 262 34 32 31 29 28 27 28 28 28 29 29 30 30 31 33 35 39 42 46 50 54 57 59 62 64 65 66 66 68 75 90 99 100 99 98 106 106 100 82 59 59 100 125 139 145 130 122 124 137 145 139 125 122 121 124 299 293 293 260 220 125 104 88 50 16 8 25 64 69 103 116 119 120 132 152 141 131 132 126 77 16 15 35 39 28 359 340 344 359 24 54 71 88 108 130 290 321 93 138 159 205 233 226 251 274 275 236 219 223 225 228 232 235 232 226 184 153 118 87 68 62 70 64 64 68 66 26 349 353 28 51 45 6 4 8 7 351 332 340 354 9 3 10 13 14 359 313 294 296 307 336 3 359 353 357 95 152 176 193 204 216 225 226 226 141 133 132 134 134 127 111 86 75 107 147 143 202 283 269 162 140 170 225 236 228 64 263 233 240 248 258 274 294 310 316 311 299 301 316 337 3 44 124 213 214 208 188 169 166 169 181 189 186 178 168 166 159 160 246 279 281 274 258 242 229 217 195 178 164 162 170 188 206 227 247 258 265 266 270 34 32 31 29 27 26 27 28 28 28 29 30 31 31 33 36 39 42 46 50 54 58 61 63 65 67 68 69 69 75 87 99 104 106 109 113 104 91 75 61 60 82 126 140 136 121 121 137 166 166 145 126 124 125 132 243 269 268 268 243 103 93 88 72 261 240 216 201 189 174 160 146 136 138 263 141 122 116 98 56 41 45 52 58 14 345 343 359 22 26 26 28 50 147 194 258 298 320 202 205 212 214 204 205 235 249 242 241 246 245 248 248 248 226 185 139 122 100 74 55 39 37 45 52 64 80 108 290 335 12 45 45 5 11 24 19 338 317 321 358 19 22 12 11 359 320 289 291 306 330 359 22 16 351 329 320 187 182 196 202 211 214 198 172 138 137 127 124 124 124 123 121 194 226 187 144 120 278 284 279 115 132 174 185 22 356 302 276 275 279 284 289 297 310 314 309 299 305 312 301 259 215 205 211 220 227 218 189 167 167 178 181 176 170 168 168 152 138 166 270 277 276 265 247 236 229 206 189 183 183 181 178 185 213 243 254 263 270 274 34 33 32 31 29 27 27 28 28 29 29 30 32 32 34 37 38 42 45 49 54 58 61 64 67 69 70 71 72 78 87 99 106 107 103 91 78 70 60 50 48 67 91 106 121 122 131 145 150 138 110 103 112 124 139 187 248 289 312 325 106 108 133 197 221 211 206 200 197 185 163 139 126 129 211 185 124 116 103 82 64 61 56 14 331 347 8 30 64 16 337 317 286 239 235 261 284 312 284 255 243 233 217 208 221 235 241 247 257 260 269 284 303 73 77 80 82 82 73 52 23 17 53 64 66 84 122 138 92 51 45 41 10 4 14 9 332 320 337 4 26 36 353 329 310 299 292 291 310 338 3 14 358 313 308 307 309 228 216 218 226 216 141 115 108 106 97 114 127 138 149 165 192 213 194 136 115 197 260 275 43 112 144 148 138 22 311 303 302 304 301 300 310 316 312 304 298 299 297 283 256 246 247 251 259 265 266 257 200 171 169 170 153 144 142 155 127 105 97 287 283 282 276 267 252 247 232 213 205 199 178 162 172 212 237 250 259 270 275 34 34 33 32 31 30 30 30 30 31 31 32 33 34 35 37 39 42 44 47 52 57 62 66 69 71 72 72 74 76 85 96 103 101 95 84 71 62 54 35 33 36 69 115 132 129 130 126 121 106 96 91 104 126 134 142 130 20 337 306 200 177 193 207 208 194 170 172 175 168 139 119 120 143 200 220 153 129 121 111 96 77 31 329 344 358 22 69 138 220 253 274 295 298 289 298 320 345 356 284 269 262 249 228 230 237 245 252 266 269 281 303 41 84 82 79 80 86 107 108 92 31 64 72 56 40 54 85 84 78 72 54 358 358 12 10 353 338 343 347 357 187 226 243 253 274 290 291 322 10 11 320 295 300 314 327 336 328 309 263 342 22 64 83 85 76 59 68 106 136 153 164 165 169 157 123 109 159 250 274 335 77 105 110 113 101 320 306 306 304 302 304 314 314 305 290 288 299 301 292 278 274 268 265 267 270 264 248 205 176 164 148 129 120 124 133 111 93 84 313 291 289 286 275 258 239 228 219 213 201 181 170 190 223 247 255 261 267 270 35 35 35 35 34 33 33 32 33 34 35 35 35 35 37 38 40 42 44 47 50 54 59 65 72 76 77 77 77 78 80 88 95 99 98 90 81 66 57 38 20 14 240 183 162 127 112 108 108 104 108 109 113 126 131 128 113 64 358 302 256 219 212 214 201 178 155 158 159 151 131 104 115 157 200 211 181 155 140 132 130 159 204 226 193 44 14 148 184 226 283 325 349 3 359 359 12 11 267 258 269 285 289 274 261 253 253 265 281 287 299 102 115 95 81 78 75 86 104 103 97 75 74 77 68 58 53 61 66 56 45 23 318 266 64 54 31 349 308 287 269 246 218 219 219 241 289 314 343 4 346 302 316 334 343 338 317 308 318 11 44 22 35 78 74 68 51 43 53 82 114 134 136 140 134 125 132 182 243 274 334 34 52 66 77 83 31 302 294 293 292 297 304 299 287 277 278 292 293 264 253 252 255 256 260 257 251 236 205 176 156 134 118 116 119 120 96 83 75 335 290 288 287 280 252 225 217 218 215 199 187 186 200 225 250 262 264 258 252 37 37 37 38 38 37 37 36 36 37 37 37 37 37 37 39 40 42 45 47 49 51 55 60 68 74 78 80 82 83 85 86 88 96 101 103 94 75 57 43 24 24 161 167 95 84 94 97 102 114 116 114 124 138 142 124 111 91 354 274 253 235 225 215 191 162 146 143 145 142 136 133 149 183 198 201 196 181 156 147 157 181 185 171 155 152 248 232 204 187 357 4 9 358 327 317 344 312 275 273 302 325 334 330 301 291 291 295 300 305 345 69 86 87 77 66 57 57 66 78 91 98 91 91 85 78 72 74 85 78 72 325 275 243 92 66 35 258 231 226 238 250 247 243 226 43 10 338 310 295 300 325 345 3 344 297 296 304 322 353 19 19 29 64 68 63 47 29 32 47 66 81 94 106 116 127 145 181 230 277 349 25 12 358 345 14 267 262 269 280 282 275 274 276 276 278 280 284 258 220 227 238 243 245 243 245 238 226 194 174 148 127 119 121 126 104 76 63 47 307 290 289 287 280 257 236 221 222 225 206 192 190 199 218 243 257 264 260 254 39 39 40 40 40 40 39 39 39 39 39 39 39 39 40 41 42 43 44 47 48 49 52 54 60 65 69 73 75 79 88 90 85 83 94 94 84 60 45 31 26 45 91 75 60 68 91 97 94 91 86 95 111 133 139 111 113 141 221 240 242 228 205 181 164 144 134 132 137 140 141 130 125 104 240 216 198 182 149 145 162 178 174 159 155 169 208 208 156 108 49 24 21 352 329 328 340 323 314 317 342 3 353 317 304 309 329 331 321 321 357 66 79 78 74 63 57 62 70 68 59 82 84 76 61 58 72 78 91 91 130 183 208 183 115 108 226 251 229 205 202 231 269 339 40 48 24 275 260 257 306 3 6 348 306 296 307 318 323 335 347 6 29 47 53 51 39 21 24 31 43 51 62 69 75 77 86 101 284 294 342 14 284 277 269 253 232 236 258 273 276 243 232 256 276 283 285 283 262 234 234 240 241 241 243 251 247 209 183 182 162 136 127 122 110 77 56 26 329 298 293 291 286 273 264 250 234 227 236 220 202 189 190 204 238 261 273 281 293 40 42 43 42 42 42 41 41 41 41 40 40 40 41 41 42 43 44 45 46 47 49 51 53 55 59 61 60 57 54 75 90 87 76 80 83 75 54 35 21 20 32 68 74 72 79 99 105 101 91 78 72 74 79 94 100 118 176 219 234 225 201 185 171 161 144 136 134 134 130 118 104 91 55 4 353 7 44 75 75 139 175 166 140 150 175 187 182 132 91 53 17 8 359 342 336 332 323 301 293 299 161 258 287 301 314 329 336 321 310 354 72 75 73 75 83 86 83 80 55 15 31 56 64 45 36 48 56 54 56 104 152 159 149 149 173 226 253 262 237 182 166 107 35 39 148 222 238 263 313 28 42 38 294 304 314 321 317 304 323 341 2 20 33 41 41 34 22 23 24 30 26 38 60 62 50 48 20 289 273 266 235 221 225 230 239 255 255 269 274 273 255 222 222 260 283 290 292 279 243 231 234 239 243 251 258 243 202 186 185 163 139 120 100 77 59 34 349 311 297 294 294 284 250 254 246 235 229 231 225 211 196 188 203 243 291 305 317 326 40 41 42 43 43 43 43 42 42 41 40 40 41 41 41 42 43 44 46 46 47 48 51 53 56 58 61 63 62 61 69 100 106 103 91 84 81 62 32 10 11 31 60 81 92 115 116 118 118 111 95 76 56 64 81 94 118 196 246 253 235 203 185 174 158 139 125 119 111 103 98 98 95 72 11 3 19 23 358 322 258 202 176 153 169 187 186 168 140 132 130 148 41 357 317 304 285 258 260 259 253 234 276 311 320 326 331 342 347 354 19 52 67 78 95 114 106 91 76 56 17 19 54 79 66 56 64 66 56 24 53 80 92 92 102 267 281 298 306 289 200 160 133 69 251 222 218 225 306 359 24 54 151 266 346 339 324 299 301 332 353 8 11 19 26 32 32 30 30 25 357 348 38 91 100 100 251 238 241 243 243 233 211 195 187 183 266 268 255 256 266 266 243 217 223 256 278 285 275 234 222 222 227 233 243 241 225 201 185 173 149 116 84 63 49 37 12 336 309 297 295 300 303 211 231 232 229 221 221 217 209 194 182 187 354 345 331 331 339 39 40 42 42 42 42 42 41 41 41 40 40 40 41 42 41 43 44 45 46 47 48 50 53 54 58 62 65 67 68 77 100 113 103 86 80 79 60 24 6 10 33 58 86 130 144 121 111 113 111 110 102 91 82 90 93 96 268 274 273 260 229 193 167 137 106 100 91 86 81 86 106 122 132 128 14 93 202 231 232 219 201 181 160 158 163 160 148 141 162 169 165 151 152 251 256 247 238 253 286 319 357 358 329 321 320 329 355 24 29 24 27 53 91 126 143 105 91 82 64 9 7 67 86 81 55 68 91 111 113 64 51 51 24 311 326 339 319 287 264 226 169 140 152 238 210 181 122 40 340 313 266 120 60 19 338 297 291 317 353 10 6 344 359 16 22 19 17 28 16 335 319 43 121 139 174 223 225 226 231 239 234 216 170 155 175 235 245 243 249 262 275 275 260 239 241 254 262 260 230 217 215 214 215 219 222 221 208 182 160 126 94 72 58 39 18 348 320 295 292 297 308 325 205 217 220 219 216 214 205 188 138 80 59 44 24 354 352 352 39 40 40 41 39 39 39 39 39 39 39 40 40 41 42 43 43 45 45 45 47 47 49 52 55 59 66 70 74 75 85 97 104 101 91 84 84 62 15 5 14 32 47 77 138 166 108 94 91 94 101 102 104 102 107 98 85 306 284 278 261 232 192 160 136 126 120 115 112 108 124 174 177 177 177 181 188 206 218 225 215 147 100 84 84 84 77 70 61 55 61 96 111 127 212 249 260 240 64 9 6 9 352 267 268 294 331 5 59 51 24 355 358 124 162 144 98 91 96 120 193 64 66 68 66 60 64 92 119 126 115 92 95 263 237 228 303 278 274 264 226 156 153 182 216 177 122 72 45 277 225 176 118 70 326 269 260 273 300 313 289 239 226 240 64 352 311 335 11 342 306 295 299 156 170 194 220 229 227 225 239 246 225 165 156 191 238 255 266 269 269 272 276 274 264 251 251 251 245 220 216 217 219 213 196 190 194 194 182 150 110 88 78 66 41 356 316 288 280 286 296 309 304 238 222 216 211 194 185 124 92 84 72 60 59 56 102 193 187 38 38 38 38 37 36 35 34 35 37 37 38 38 38 39 41 43 44 46 46 47 48 51 53 57 63 71 76 81 83 88 93 102 107 109 109 105 91 32 12 15 21 31 69 149 145 106 94 91 86 82 98 110 121 121 108 91 326 297 279 254 225 196 168 150 146 153 160 168 172 191 205 211 195 178 167 167 187 231 258 352 84 74 84 100 106 75 59 38 35 49 61 70 75 303 320 345 24 64 187 208 216 216 215 167 73 24 11 82 99 56 326 328 331 102 100 86 88 96 120 161 91 81 80 84 91 53 356 240 172 164 173 183 192 192 173 183 243 269 283 286 226 192 197 95 77 72 59 268 245 193 146 114 102 262 256 242 229 238 246 235 200 138 144 174 196 211 194 170 170 209 243 279 197 191 203 220 225 221 212 233 251 229 182 165 197 240 265 281 287 281 275 275 279 282 286 288 276 242 210 207 211 210 193 159 156 163 176 171 133 83 67 64 56 26 311 286 275 274 279 286 292 289 280 284 320 11 51 39 44 64 78 74 64 51 22 228 197 192 37 37 36 35 35 34 33 33 33 33 33 34 35 35 36 38 40 42 45 46 48 49 50 53 60 68 81 92 99 99 98 97 100 109 114 111 101 82 49 23 9 4 10 38 120 137 126 116 119 118 112 114 124 122 118 110 105 290 285 275 258 236 205 181 165 165 168 175 184 190 199 211 218 205 146 136 138 148 190 208 182 162 170 173 170 165 165 177 176 150 110 72 33 9 347 353 358 348 281 233 215 204 194 181 146 144 159 200 200 158 150 102 345 349 359 34 63 81 91 113 113 97 95 97 99 106 101 309 279 234 200 190 190 174 149 131 162 234 275 293 302 278 263 64 61 64 102 226 229 211 124 94 86 211 270 262 242 207 192 182 152 92 64 102 170 183 197 185 172 156 156 162 228 237 220 205 172 43 43 228 235 249 239 213 198 211 228 245 265 273 278 280 282 289 292 291 280 264 239 207 202 212 218 182 150 151 161 172 153 95 61 43 30 349 297 279 275 279 279 273 254 249 261 285 321 346 3 26 35 51 80 78 74 70 53 325 251 226 198 37 36 35 34 33 32 31 30 30 31 31 30 31 32 33 34 36 39 43 45 48 50 51 53 60 72 90 112 122 118 112 106 100 94 87 81 74 56 36 17 2 359 2 8 29 92 115 111 112 113 109 105 91 70 79 100 118 183 262 269 269 275 243 198 176 163 162 165 178 202 214 218 209 107 97 114 133 155 182 182 175 162 153 169 172 171 168 159 146 129 108 84 345 322 344 14 22 344 287 253 223 202 188 178 175 168 181 213 231 172 132 108 29 331 336 16 53 87 122 130 100 91 94 106 111 112 112 95 293 279 255 228 102 113 124 124 183 200 243 291 300 308 9 64 84 234 233 213 168 100 85 75 102 235 259 262 249 183 111 91 85 44 340 321 331 9 14 337 299 193 139 115 102 311 326 14 56 38 293 246 228 242 243 234 220 215 209 216 238 255 260 272 287 289 284 272 253 232 212 187 183 240 325 228 148 157 169 177 118 77 45 355 312 296 286 282 282 285 285 269 232 207 234 335 359 3 359 358 7 43 92 91 85 78 64 290 260 240 211 37 36 35 32 31 30 30 29 29 29 30 31 29 29 29 31 32 34 38 43 47 50 54 57 63 70 83 102 122 130 125 114 101 87 71 59 47 24 10 4 3 1 2 2 9 66 83 87 90 97 91 86 75 45 66 105 127 160 231 258 269 295 312 342 124 121 119 126 153 216 245 234 113 77 72 70 56 41 64 83 64 54 64 115 137 141 134 121 118 117 123 150 200 193 39 35 26 318 274 256 230 196 181 173 160 143 161 311 318 7 92 119 138 226 289 348 45 102 143 125 101 86 91 147 152 126 118 151 267 289 320 356 354 240 167 164 182 183 170 263 293 295 321 93 151 246 243 162 104 84 197 221 225 237 242 233 197 77 13 357 161 197 283 297 306 321 332 314 298 267 113 75 31 348 6 29 56 263 239 231 216 219 220 212 193 175 166 205 238 253 264 282 295 291 279 276 260 221 157 130 108 83 53 11 22 161 172 170 87 71 28 297 286 285 287 287 286 282 276 264 239 141 56 41 32 28 11 339 312 311 352 92 108 106 104 193 258 243 213 37 36 34 32 31 29 29 30 29 29 29 30 28 28 28 28 28 32 35 40 45 50 55 59 63 68 76 81 90 103 116 118 105 93 88 80 64 11 342 349 355 359 2 2 14 79 98 109 108 106 98 91 91 91 108 111 124 136 204 280 300 331 342 342 115 108 110 118 152 232 257 237 115 99 91 83 38 29 39 64 64 29 19 38 78 81 86 98 114 123 129 136 147 118 91 64 342 269 260 253 187 120 91 78 64 48 26 3 355 359 12 92 124 124 44 4 40 91 121 100 81 67 303 234 172 126 108 107 243 279 304 309 281 243 216 141 92 41 193 202 236 275 268 202 184 240 236 139 106 187 240 229 219 223 222 193 156 41 311 279 235 202 195 223 232 249 269 274 257 197 119 72 309 243 212 147 162 216 225 217 200 191 182 141 69 84 126 200 243 264 300 312 305 290 280 285 283 243 131 120 118 116 108 75 29 11 11 41 76 79 352 275 274 278 278 277 276 280 291 306 318 16 45 55 56 60 95 187 228 309 321 303 141 131 130 211 258 240 210 39 37 35 34 32 31 29 29 29 29 28 28 28 28 28 27 28 29 31 36 44 49 54 60 65 69 71 74 75 77 79 91 103 105 108 119 136 163 251 353 8 9 7 2 9 77 140 148 136 124 121 116 121 112 104 95 101 108 124 289 287 269 232 208 175 153 151 167 199 213 218 200 158 151 151 153 160 170 165 157 151 128 14 19 35 32 31 56 99 112 119 133 148 153 149 168 236 259 258 226 126 105 87 71 56 42 24 3 350 342 337 357 84 86 53 358 5 44 70 74 70 44 293 284 41 101 101 95 243 248 232 220 220 234 193 92 69 321 269 226 196 232 255 240 211 182 132 104 92 269 264 254 243 238 238 194 177 192 236 256 247 219 189 191 181 181 208 232 194 163 145 183 229 218 193 165 198 213 214 194 115 75 51 29 14 113 157 218 275 301 330 325 310 293 283 280 269 243 181 141 133 129 119 87 41 5 345 49 82 98 232 261 268 272 270 264 264 287 311 319 314 334 22 58 70 104 152 149 132 107 336 298 269 194 167 228 268 261 220 39 39 37 34 33 32 31 32 31 31 30 29 28 29 28 28 29 29 32 37 42 49 53 60 65 69 72 74 73 71 69 74 93 107 117 133 150 148 100 36 27 19 13 9 10 29 139 153 136 134 134 134 139 127 103 87 85 97 92 286 273 245 227 218 195 166 168 181 202 209 205 182 158 160 172 174 173 178 178 173 167 155 129 91 64 284 261 281 77 105 124 151 177 185 169 173 202 236 228 200 162 129 97 75 60 41 15 342 317 305 295 306 53 72 50 331 326 14 56 59 51 14 311 301 321 128 138 185 248 239 234 216 193 352 53 75 80 281 262 243 167 193 276 263 226 111 97 75 11 285 283 286 284 269 248 228 215 210 213 227 245 253 245 182 140 147 221 241 202 159 136 200 245 233 205 189 218 200 162 118 75 77 193 237 237 216 151 148 311 311 314 297 282 273 274 265 250 238 207 165 143 129 113 82 351 295 241 172 137 156 240 258 268 275 276 264 248 281 313 317 304 309 325 20 80 120 144 143 127 115 95 293 283 251 204 185 342 293 243 42 40 38 37 35 34 34 34 33 31 31 31 30 30 28 29 30 31 33 37 41 48 55 61 68 72 78 80 81 82 79 80 90 107 120 127 122 91 54 33 23 18 18 19 19 27 45 91 121 136 140 140 143 136 128 117 106 94 64 328 294 273 258 239 183 158 156 170 192 216 196 155 148 162 185 189 188 186 181 178 170 159 152 157 181 213 219 209 177 126 139 176 195 198 177 174 185 194 198 186 160 132 104 86 75 56 11 286 264 250 241 249 187 107 113 281 269 161 108 83 41 325 311 298 277 209 164 170 243 269 251 148 73 11 14 124 172 215 226 194 130 187 262 285 319 49 76 14 269 255 269 291 292 283 266 257 248 238 220 198 212 236 258 185 133 169 219 236 193 136 119 209 261 249 218 231 239 205 169 150 173 215 216 215 209 248 218 209 243 269 260 245 232 235 232 225 230 227 210 178 151 130 111 14 297 285 261 202 181 196 234 256 261 273 283 275 218 170 342 322 305 304 304 304 266 151 138 132 124 138 151 243 283 269 248 185 107 41 263 44 42 40 40 38 37 37 36 36 35 34 34 33 33 33 32 32 33 35 36 40 45 53 63 70 76 84 90 95 97 96 95 99 110 121 120 101 81 53 24 10 10 19 25 29 31 39 52 60 75 114 129 133 136 139 134 122 106 83 320 293 286 289 41 93 130 141 153 168 191 193 167 160 177 206 204 202 197 190 185 176 164 154 165 184 197 196 183 168 159 170 192 197 195 181 172 181 186 188 175 125 111 106 106 127 164 205 225 221 202 190 188 183 162 162 194 221 174 147 143 173 182 208 236 247 220 173 152 226 269 243 198 166 202 237 216 197 197 185 120 131 189 241 274 324 39 56 253 245 230 212 295 301 302 297 280 272 263 249 192 184 193 209 182 160 186 232 245 192 120 116 209 259 255 218 226 265 241 210 186 170 200 212 226 243 263 246 230 226 241 249 239 215 191 191 193 197 201 203 189 170 154 170 248 272 278 274 251 232 227 233 242 243 243 268 247 190 144 80 348 310 304 302 299 289 243 147 127 120 202 218 209 289 300 304 311 41 102 193 46 44 42 42 41 41 41 40 40 39 39 38 38 38 38 39 37 38 40 42 42 46 55 63 69 78 88 98 104 110 112 111 107 106 109 113 104 100 84 13 359 8 27 37 38 38 46 54 55 53 56 79 98 109 116 117 121 136 167 198 222 232 230 190 190 182 169 155 169 190 207 196 188 193 207 210 206 200 191 185 173 161 159 174 190 194 190 183 176 173 172 172 164 159 147 131 148 299 312 14 96 111 130 163 188 198 201 194 189 177 162 163 175 164 173 192 205 183 156 143 147 162 175 205 220 243 167 162 192 233 229 207 182 162 243 290 352 20 16 354 226 221 240 22 60 69 255 249 235 183 82 331 316 312 313 291 279 282 313 324 198 177 165 137 112 41 280 263 220 137 145 200 238 221 198 204 269 265 241 201 151 143 202 251 249 251 250 243 240 247 261 255 230 184 177 185 197 195 193 194 190 187 210 234 248 258 268 262 257 252 251 240 211 164 164 196 163 137 91 41 279 281 295 301 301 300 243 144 164 198 202 188 240 331 321 304 298 255 216 49 48 47 45 45 46 45 44 43 43 42 43 43 43 44 44 45 46 46 47 47 49 55 60 66 76 86 94 104 113 118 119 109 101 91 95 100 99 91 19 343 348 14 36 45 51 58 65 66 65 60 61 72 82 90 94 114 144 163 164 181 205 216 207 194 188 177 159 165 186 209 223 215 207 208 208 204 198 187 181 170 165 167 181 194 194 193 197 198 184 166 152 140 140 139 125 91 41 309 342 132 153 167 187 196 175 155 150 153 182 182 168 153 183 212 208 198 172 111 91 78 82 64 342 352 25 25 124 182 210 221 216 95 80 14 356 329 320 298 286 284 286 311 24 80 185 249 242 205 99 40 327 311 309 305 293 285 304 350 355 306 157 118 86 29 318 274 243 207 181 181 199 216 198 181 182 231 265 254 221 162 151 200 253 251 248 257 263 267 270 279 284 285 278 289 294 292 288 207 190 190 196 214 233 245 250 257 260 263 267 267 254 192 155 153 166 153 136 121 144 190 215 226 269 293 295 281 243 205 193 187 159 104 31 311 276 269 262 248 53 52 52 51 49 49 49 47 48 48 48 48 47 49 51 51 51 51 52 53 53 56 58 62 67 73 81 88 98 106 110 110 103 91 82 82 84 85 78 24 302 317 337 353 5 45 65 75 79 80 78 75 72 72 76 87 108 141 216 183 155 175 211 213 181 167 145 129 142 166 205 232 234 225 220 213 206 196 188 183 181 181 181 188 193 188 193 203 215 202 170 147 140 142 146 140 127 155 237 267 151 155 159 152 119 113 106 121 162 208 221 190 162 175 205 205 182 159 122 98 72 50 25 7 348 342 318 268 216 167 73 56 44 41 240 226 226 231 238 253 279 304 331 11 102 218 242 243 156 105 72 292 283 279 281 282 289 317 9 11 337 357 91 96 311 274 252 223 203 192 190 197 203 189 181 181 191 236 251 232 190 177 211 243 259 266 276 277 279 282 284 289 294 297 300 302 300 299 275 208 185 188 209 227 239 245 250 258 264 270 273 262 194 168 162 155 142 127 120 141 182 198 192 187 215 261 285 264 243 218 168 108 82 95 251 253 257 263 262 58 57 55 54 53 53 53 51 52 52 53 53 53 53 54 55 55 56 59 60 60 60 63 65 68 71 77 83 90 96 100 100 98 93 91 91 94 101 108 290 298 323 354 359 353 326 354 64 80 85 84 77 69 63 67 84 105 125 164 173 147 124 92 59 64 74 74 79 98 130 216 248 261 258 243 225 215 206 200 196 195 197 198 197 193 186 186 191 198 194 153 141 140 143 144 134 126 136 251 298 356 83 100 100 99 99 107 162 190 200 255 240 202 187 196 190 183 156 137 125 127 157 170 185 226 240 236 226 194 124 118 131 184 220 215 190 190 208 231 215 197 243 284 286 243 255 269 265 212 150 148 246 274 265 258 272 279 313 21 22 313 241 203 176 203 251 255 235 208 198 193 191 194 185 177 170 148 156 243 254 235 215 225 246 263 272 272 270 271 275 282 286 289 291 293 295 296 295 292 267 204 188 200 216 229 238 250 261 270 275 274 260 234 204 168 146 130 119 124 137 173 221 225 203 195 202 240 251 238 208 143 91 92 211 226 231 240 255 255 61 61 59 59 57 55 55 55 55 55 55 56 57 57 57 60 60 61 62 62 63 63 65 67 68 68 72 76 79 83 90 96 96 90 82 91 102 113 137 202 299 357 33 11 331 298 284 329 29 68 86 83 75 66 57 82 100 105 108 101 91 86 61 45 42 45 42 48 45 29 358 351 344 329 305 269 236 222 212 210 209 207 210 202 192 181 167 153 139 126 118 122 131 136 132 127 128 133 187 298 319 56 161 162 164 162 183 170 151 141 276 257 226 162 144 124 22 43 101 129 155 177 181 176 182 200 201 186 164 151 146 168 211 226 220 156 147 228 279 237 184 194 232 243 200 226 285 287 269 182 165 189 235 248 258 273 292 348 39 356 265 236 217 199 204 233 250 254 239 216 199 195 195 187 160 125 91 82 261 254 251 269 281 278 273 270 264 261 263 268 275 281 285 287 287 287 287 286 288 283 266 225 211 214 221 229 243 264 272 266 255 248 258 251 183 141 130 128 136 140 144 251 275 245 225 209 205 214 205 175 133 124 144 200 205 211 226 239 251 64 63 63 61 59 57 57 57 56 57 58 59 59 59 60 61 62 64 65 65 66 67 67 67 67 66 67 67 68 69 75 85 93 91 79 80 97 113 136 176 162 127 97 64 319 304 304 82 66 75 92 100 104 101 91 79 79 75 64 48 51 56 51 35 29 31 42 42 33 20 12 7 7 3 352 328 305 276 240 221 210 203 198 192 187 166 144 130 121 111 103 105 121 136 138 138 131 127 124 263 289 268 216 207 193 168 163 166 166 183 226 253 251 107 104 93 240 187 144 153 165 165 150 127 124 151 183 163 144 133 137 194 231 231 200 149 101 43 298 277 226 205 196 182 153 149 267 295 297 249 209 207 228 251 283 297 282 255 208 209 254 260 257 248 226 243 258 266 265 243 221 205 209 151 91 76 56 284 253 254 262 314 319 307 287 271 262 258 259 262 269 274 278 279 278 275 273 273 275 282 286 281 270 260 243 229 236 241 243 229 189 183 243 262 194 150 136 146 151 151 145 167 243 240 229 214 198 196 187 168 144 143 155 172 177 182 190 204 216 67 66 64 63 61 59 59 59 58 59 59 60 60 61 61 62 63 64 66 67 68 68 69 68 67 67 66 65 63 61 61 68 93 107 106 99 96 106 121 153 153 129 124 128 331 352 41 77 72 72 85 99 115 123 121 91 73 54 28 4 33 45 39 7 16 40 42 28 13 9 14 17 8 355 344 331 322 320 317 331 354 95 139 147 138 119 110 103 114 119 130 155 173 170 158 144 131 126 125 147 255 269 261 239 204 182 182 198 198 187 182 211 41 77 108 162 204 190 165 181 181 165 137 113 124 185 204 182 159 143 152 234 247 232 184 130 100 113 260 265 241 200 144 110 100 103 104 309 304 297 281 254 230 236 263 269 253 233 207 191 241 288 304 321 340 308 283 276 266 259 237 107 75 72 82 86 187 252 257 263 334 5 348 322 294 275 262 255 263 267 264 263 264 265 265 263 262 266 275 284 289 289 288 289 293 311 161 183 188 176 159 155 174 221 194 167 151 160 164 163 160 165 175 194 198 196 192 182 175 173 168 160 160 156 159 158 168 182 172 68 67 65 63 62 62 60 59 60 60 61 61 61 62 62 63 63 64 66 66 67 67 69 68 68 69 68 68 66 63 60 62 74 101 112 112 111 109 114 115 130 129 138 148 331 17 57 78 77 70 75 84 93 103 108 104 94 78 48 15 21 19 19 22 54 72 75 43 286 260 226 161 243 269 281 289 299 311 330 351 16 30 45 45 37 36 50 72 131 150 160 171 176 168 150 137 130 125 125 141 202 281 319 334 312 281 239 249 261 185 126 100 59 51 53 41 289 269 226 209 213 187 145 136 155 182 188 175 144 126 131 192 212 209 128 100 108 170 238 258 238 166 118 95 77 92 157 173 209 281 292 288 264 222 217 223 216 194 138 92 357 311 305 306 313 289 274 269 266 259 197 124 104 95 106 141 198 251 264 292 34 37 12 321 290 278 267 260 260 14 187 222 239 250 258 268 279 285 287 287 288 290 292 297 311 8 56 78 101 147 153 158 176 196 190 174 159 157 164 166 164 162 171 172 172 171 176 170 158 156 183 190 182 163 153 148 162 168 156 68 68 66 64 63 61 61 62 61 62 61 62 63 63 63 63 63 63 63 64 65 65 67 68 69 69 69 69 71 71 70 66 67 75 104 116 128 136 146 155 153 138 130 41 11 64 81 91 91 83 78 73 69 64 80 108 117 114 91 64 32 349 358 31 64 110 159 216 245 235 211 190 191 216 228 234 238 259 304 347 22 36 50 59 44 354 303 193 170 152 138 104 82 91 104 121 130 130 136 143 163 167 342 356 319 298 283 263 251 212 144 104 67 9 329 293 276 269 258 247 249 232 138 122 137 149 138 119 91 69 73 124 193 124 104 99 131 239 260 261 233 181 146 125 151 232 225 203 188 202 243 276 283 266 234 196 162 131 106 69 267 275 273 269 258 274 289 296 283 261 221 153 118 106 115 152 196 245 265 304 47 63 51 269 266 273 274 275 280 269 243 235 241 257 270 281 288 289 289 288 289 290 292 297 312 348 26 37 25 335 299 226 205 203 190 177 164 157 159 165 159 159 159 159 155 162 172 172 146 137 152 192 198 176 166 155 158 155 156 70 68 65 64 64 62 62 63 62 63 64 64 64 65 65 64 65 63 63 63 63 64 64 65 67 68 69 71 74 76 77 77 75 74 76 90 109 122 134 136 124 100 72 38 56 79 100 108 107 102 94 83 64 41 49 78 106 112 102 91 35 310 317 358 22 161 207 222 242 251 228 207 204 219 222 219 216 196 148 24 29 41 204 205 208 234 266 41 92 91 77 66 64 76 86 100 118 133 141 146 153 155 159 183 232 236 232 223 212 200 171 140 133 212 229 222 222 238 253 277 293 14 72 85 86 75 83 91 91 14 329 326 357 35 64 91 124 218 264 269 239 182 149 133 152 246 250 231 207 191 197 229 278 286 284 209 136 125 125 226 246 258 259 258 226 313 319 314 303 286 240 169 114 97 102 236 220 225 238 243 73 115 216 244 258 269 275 281 287 282 276 272 271 276 280 283 285 285 285 284 284 286 289 291 299 328 353 358 334 304 289 269 238 233 214 195 177 166 163 159 156 148 146 150 148 160 173 173 155 143 140 159 190 187 176 158 137 131 157 69 68 66 65 63 63 63 63 64 64 65 66 66 66 66 65 64 64 64 63 63 63 64 64 65 66 66 67 69 70 76 80 82 76 70 70 84 98 100 86 68 44 29 19 39 77 108 125 131 127 119 114 103 83 51 75 115 129 121 142 175 251 305 343 334 283 240 228 225 232 236 229 229 240 258 228 124 92 54 31 358 301 264 248 249 293 357 44 70 70 72 72 75 82 83 87 98 118 130 139 146 155 164 186 205 223 225 220 207 195 170 151 151 177 192 199 202 214 218 209 77 84 86 83 79 61 50 72 119 172 226 251 43 53 64 92 139 184 262 273 254 169 133 128 173 250 258 251 231 182 155 158 263 285 286 275 138 119 115 266 273 275 275 273 211 20 327 305 291 259 211 155 112 91 279 258 236 218 219 216 198 212 231 244 256 268 278 284 287 285 283 282 282 282 282 281 282 282 282 280 281 281 277 266 251 255 284 289 281 269 264 253 236 232 222 213 197 173 156 144 136 132 129 130 136 153 162 165 158 155 150 150 169 182 169 132 83 64 342 69 68 67 66 65 63 64 65 66 66 67 68 67 68 66 66 66 66 66 65 65 65 66 66 65 66 66 65 65 62 65 73 88 96 81 62 59 70 73 65 45 10 344 339 11 92 126 129 131 127 127 129 139 155 165 176 162 141 129 133 137 102 358 344 309 289 279 263 249 261 294 286 284 354 38 45 41 38 26 5 319 293 279 283 312 6 26 41 55 59 66 66 75 82 83 86 96 108 133 141 151 159 165 174 189 209 231 258 243 161 73 107 132 149 162 169 181 198 188 156 110 105 105 103 94 70 25 20 92 143 174 182 162 149 164 192 190 183 243 265 261 202 133 127 182 248 269 283 289 187 141 149 196 266 275 273 232 118 110 303 283 283 280 275 253 139 255 281 281 232 177 136 86 35 281 260 240 201 189 212 228 229 237 244 255 267 277 281 282 281 279 278 279 279 280 281 283 280 279 279 282 276 231 181 174 173 186 210 229 235 235 232 229 222 216 205 193 163 140 123 113 107 106 110 125 132 132 124 95 148 185 183 182 174 138 99 54 7 321 71 70 69 69 68 66 66 67 68 69 69 69 69 70 69 68 68 67 67 68 68 68 67 67 68 68 68 69 67 63 60 63 82 97 91 72 68 78 86 85 56 298 295 301 336 56 108 118 118 114 116 123 133 137 137 129 124 118 106 96 81 53 290 251 264 283 300 326 342 354 359 359 36 51 45 32 17 342 239 213 233 257 289 345 22 41 42 42 50 54 55 52 59 70 80 98 122 150 166 164 165 166 164 161 164 166 157 73 51 48 30 22 40 104 127 133 137 147 138 115 97 95 94 101 116 149 185 240 73 101 130 162 174 149 168 175 182 156 255 279 281 268 101 116 143 236 269 286 286 243 205 191 194 225 251 261 239 115 124 192 261 270 273 272 243 181 192 235 263 212 148 109 66 294 266 249 193 151 155 226 246 243 247 255 268 274 275 275 273 272 272 273 274 277 279 282 281 277 274 275 279 269 173 162 173 177 184 194 198 207 214 213 207 205 202 194 174 137 113 98 94 94 95 101 110 99 84 60 33 9 309 268 243 216 147 111 80 41 263 73 73 70 70 69 70 69 69 70 70 71 71 71 71 70 70 70 70 70 70 70 71 71 72 72 72 72 72 72 71 70 69 76 85 94 96 110 109 107 113 161 278 285 298 321 56 91 98 96 95 91 91 86 72 78 76 78 84 110 115 122 194 221 225 243 274 291 313 334 351 7 30 50 55 45 348 277 254 243 237 248 277 335 31 45 45 45 48 56 54 55 52 45 54 72 107 139 152 144 144 153 155 155 146 142 140 124 114 99 78 50 22 13 36 82 91 86 75 72 84 91 96 100 112 133 166 165 141 115 104 141 148 102 73 124 167 157 124 161 276 282 298 44 91 110 162 218 240 241 248 235 215 200 200 248 289 325 107 159 207 245 261 268 267 250 196 181 186 196 137 106 97 100 250 254 241 119 111 138 248 267 275 281 287 286 280 274 270 266 264 267 271 280 288 290 288 281 274 271 268 262 209 156 190 203 202 202 201 201 198 196 193 181 175 174 162 131 104 86 83 84 83 86 86 85 84 78 72 43 325 293 289 289 279 243 141 147 152 162 75 75 75 73 72 71 70 71 72 72 72 72 71 71 71 71 72 72 72 73 73 73 73 74 74 74 75 76 76 77 77 77 79 84 93 111 121 106 103 104 93 293 291 286 303 77 84 75 74 74 79 91 91 85 86 74 60 53 100 108 115 139 243 268 278 280 283 299 319 344 16 47 63 74 342 257 254 265 279 298 318 349 19 37 45 42 42 45 58 62 57 48 36 35 29 33 50 64 72 72 70 83 98 114 117 116 107 114 116 114 100 44 17 19 45 73 75 64 44 56 78 91 99 108 108 115 124 112 122 144 192 162 130 92 240 237 208 171 181 222 261 275 35 66 84 185 226 225 225 249 265 269 240 44 353 321 293 278 253 250 254 261 264 267 269 255 139 113 98 86 97 164 225 243 252 263 84 72 309 278 287 293 293 291 287 285 279 271 264 259 263 297 331 323 311 299 287 278 272 267 241 196 185 199 215 218 221 221 213 207 197 181 163 148 127 108 91 79 77 75 72 71 70 72 78 78 83 124 228 251 268 293 298 294 286 268 211 162 156 76 76 75 73 73 72 71 72 72 72 72 72 70 70 70 70 71 72 73 74 74 75 75 75 76 78 78 80 81 81 82 81 81 84 88 94 94 94 100 108 107 325 321 342 107 91 86 86 106 147 160 153 140 126 111 86 37 12 9 56 75 67 345 294 281 279 284 305 325 347 17 55 79 120 243 255 262 291 329 348 4 14 28 38 45 45 45 45 50 52 47 42 33 24 19 22 31 47 62 64 59 55 61 74 84 91 94 102 109 111 106 72 41 33 42 68 79 70 49 28 31 64 96 104 103 83 82 100 111 139 187 119 118 147 232 229 217 200 202 225 245 255 41 92 120 243 238 220 197 299 305 305 304 41 283 276 278 288 290 280 270 266 265 270 298 358 49 73 83 83 239 241 240 250 263 31 64 357 300 292 296 285 275 267 264 272 273 271 258 237 182 78 8 334 314 299 295 291 286 281 250 219 200 202 217 223 228 235 229 216 201 172 143 121 107 96 85 68 68 65 60 55 53 56 64 82 104 187 226 226 226 267 289 301 295 291 279 237 185 75 74 74 72 71 70 71 70 69 70 71 70 70 68 67 67 68 70 72 73 75 77 78 78 79 80 82 83 84 86 86 87 88 88 85 87 91 97 113 119 115 56 35 40 54 78 99 126 159 181 167 145 131 123 107 82 48 8 343 358 60 77 267 255 269 289 309 317 321 321 319 95 151 209 258 273 282 308 358 5 358 349 19 40 56 64 55 51 47 50 47 42 36 24 14 13 21 39 56 73 78 76 74 72 78 87 94 98 100 106 106 101 84 64 52 52 75 81 68 41 17 22 64 103 104 91 83 91 91 69 25 56 107 212 238 225 213 202 218 236 241 243 167 115 139 247 251 197 131 120 277 278 269 226 216 246 269 289 269 267 270 274 274 279 309 64 84 101 126 225 241 244 238 235 107 97 115 216 263 269 273 267 258 248 238 243 250 255 236 190 150 125 95 289 283 285 289 291 291 289 278 259 236 223 223 222 229 232 232 225 196 153 121 107 97 94 82 65 62 57 53 33 31 352 193 185 184 208 211 208 200 216 268 294 293 287 283 286 290 72 70 70 69 68 66 65 66 66 67 67 68 67 67 66 64 64 65 67 69 73 76 79 80 82 83 85 86 87 90 93 95 97 94 90 88 94 103 116 116 96 54 32 31 41 67 100 124 152 164 137 124 123 118 113 112 118 211 260 269 193 237 253 263 311 339 331 313 293 274 249 192 156 197 269 281 291 312 11 354 335 342 19 45 64 72 72 66 66 61 60 54 48 28 14 8 11 30 48 65 80 84 84 84 87 91 95 99 101 107 109 114 108 91 68 48 66 91 97 84 38 5 14 56 67 64 64 82 100 91 59 64 243 238 238 211 182 190 221 238 236 211 82 64 14 278 262 243 128 139 231 259 269 251 151 185 253 245 237 251 268 278 275 258 209 162 149 157 202 231 238 236 220 153 116 116 153 195 209 223 243 253 256 252 239 237 238 239 222 181 157 157 189 223 246 258 270 276 280 276 272 260 238 228 225 221 214 213 212 208 175 129 111 101 98 90 83 73 70 78 80 193 226 226 216 210 205 203 203 199 187 192 226 298 293 291 291 301 313 69 67 67 64 62 61 61 60 60 60 62 62 63 63 63 62 61 61 61 63 67 71 77 82 84 87 87 89 90 91 94 97 99 96 92 90 94 94 99 98 91 73 45 12 29 80 100 111 131 132 132 129 130 129 124 133 153 187 193 196 192 212 243 281 38 33 335 298 290 280 258 157 108 303 291 291 304 345 35 14 9 16 33 54 68 72 77 82 82 82 77 70 61 41 21 8 13 30 45 60 71 80 84 87 87 94 94 101 105 109 107 100 103 108 106 104 41 80 91 96 72 29 7 20 43 102 148 151 126 126 147 212 233 241 238 212 197 216 248 268 309 35 64 29 312 280 283 304 336 303 226 248 268 14 54 38 294 267 246 241 246 262 259 242 204 173 165 181 215 233 234 219 169 141 139 153 186 201 203 200 220 243 256 259 255 248 241 232 213 190 178 178 199 221 242 259 265 266 262 254 242 228 217 219 223 218 205 195 193 182 159 121 112 106 103 103 106 118 137 155 169 196 218 222 222 217 212 209 204 197 186 175 184 284 295 297 301 306 310 65 64 62 61 59 58 57 57 56 57 57 57 58 58 58 59 57 57 57 57 59 63 70 77 85 89 90 92 90 90 90 96 100 99 97 96 94 87 84 85 94 91 82 352 342 93 111 111 119 131 138 149 137 133 131 131 136 148 155 144 145 153 190 194 157 156 221 263 293 335 35 44 29 328 307 301 334 12 29 38 38 38 44 60 66 75 77 78 78 78 77 70 58 35 25 19 22 33 47 54 63 71 81 87 94 101 104 108 111 111 110 113 122 132 137 137 132 115 110 121 131 173 192 194 183 194 183 164 149 159 189 229 233 236 251 325 336 329 324 324 321 124 131 167 261 274 279 289 306 326 311 336 9 25 33 5 300 273 254 235 227 231 237 228 200 173 171 183 208 232 222 195 164 164 174 191 211 211 201 197 210 234 248 254 261 260 257 246 220 206 203 203 220 247 267 276 274 270 258 232 207 196 196 204 209 202 186 176 169 162 141 118 110 109 112 120 134 162 177 181 181 189 199 211 217 220 217 215 207 192 181 165 156 194 258 283 291 295 295 62 60 58 58 55 54 53 52 52 52 52 52 53 53 53 52 52 52 51 51 50 52 56 63 72 79 87 87 86 82 79 84 93 98 99 94 87 81 78 77 76 78 64 22 354 53 75 77 92 115 138 172 156 133 125 116 114 108 95 91 101 118 149 183 204 212 243 299 20 59 52 33 326 287 285 300 334 4 21 31 23 33 37 48 56 66 73 73 73 77 77 74 64 54 31 26 32 39 47 54 61 70 80 87 97 108 111 116 118 116 116 125 138 156 141 133 133 133 141 147 162 175 175 175 164 164 164 166 182 202 218 225 192 120 82 11 336 299 289 262 230 200 158 143 226 275 284 298 348 12 358 349 356 14 303 268 264 263 261 247 231 222 225 206 175 167 186 203 216 221 209 189 167 178 195 211 222 220 216 217 230 245 255 263 268 271 272 273 262 249 240 239 255 266 272 274 274 276 275 243 201 190 190 193 189 186 167 162 158 150 133 118 112 114 119 132 151 181 185 188 187 191 195 199 207 212 215 212 204 189 177 166 170 182 193 205 235 264 277 61 57 56 54 51 50 49 47 47 47 47 47 49 49 49 49 48 48 45 45 45 43 45 48 54 60 67 71 73 70 65 72 86 91 91 75 68 63 65 55 48 39 29 16 22 35 45 48 58 75 104 120 139 112 110 113 113 108 103 95 91 91 92 64 22 356 7 29 54 77 115 216 247 258 262 298 358 28 37 33 10 8 20 28 42 61 72 76 76 81 81 86 78 66 48 45 42 42 45 52 60 71 78 91 98 105 118 114 116 118 120 132 143 152 122 110 97 99 99 91 75 83 92 107 120 139 183 205 222 235 243 216 130 124 130 197 221 213 207 222 219 189 124 84 22 286 287 334 23 37 7 289 260 226 220 248 256 257 260 257 253 240 217 174 159 174 201 216 221 220 206 194 186 198 210 220 230 228 231 242 257 267 270 271 271 272 273 275 274 270 263 257 260 258 255 253 255 261 267 258 236 210 196 190 181 169 153 151 153 153 133 124 118 120 127 140 159 185 197 199 198 202 202 202 199 206 207 204 193 181 173 166 176 186 189 189 199 214 236 59 55 52 49 46 46 46 45 43 43 43 43 43 45 45 47 47 47 45 43 38 36 38 40 41 43 49 54 62 64 61 66 66 66 61 52 45 38 32 26 17 14 20 38 40 37 35 34 39 45 58 84 99 85 96 107 118 119 116 111 100 79 54 33 39 35 31 22 22 202 205 231 243 255 148 20 35 45 56 20 342 334 359 19 42 58 69 77 82 82 82 82 77 66 55 51 48 42 45 45 54 68 81 91 104 116 118 121 121 122 124 137 137 127 110 97 84 72 72 64 59 64 77 93 148 216 226 226 243 278 289 267 167 170 194 215 215 204 212 233 243 115 94 85 266 260 281 20 44 35 267 262 261 248 239 261 264 262 260 261 260 250 219 190 182 193 211 222 228 224 211 204 206 212 219 225 229 231 236 254 274 277 274 270 268 267 266 266 265 262 255 237 233 234 238 236 234 236 242 241 234 218 201 190 177 164 153 153 158 162 143 131 128 131 134 143 163 192 205 209 207 217 217 217 209 212 209 202 185 173 164 166 182 196 203 197 192 193 198 57 54 50 47 47 45 43 41 41 39 39 39 41 38 40 42 47 47 50 50 40 38 34 34 36 38 45 55 61 66 61 59 57 56 57 55 45 37 21 4 344 342 7 39 37 31 27 29 30 33 45 66 78 79 91 110 124 125 121 120 113 91 60 35 45 45 14 313 283 260 255 284 354 53 67 45 25 9 354 356 339 337 351 15 36 50 58 72 76 80 75 74 73 68 55 48 48 45 37 37 48 58 77 99 118 124 123 114 102 91 80 120 119 112 115 122 124 157 173 166 156 172 167 211 243 247 231 220 226 268 278 269 243 263 266 268 278 278 276 281 289 69 86 100 243 255 95 75 56 284 261 269 279 279 255 259 265 270 270 268 261 249 236 220 210 209 218 228 234 231 219 215 218 225 228 231 232 230 232 237 255 264 267 267 267 264 258 251 251 243 230 209 200 204 218 223 221 219 221 223 212 195 185 181 177 166 156 156 162 166 153 141 134 134 134 140 156 186 199 205 205 209 212 217 220 220 217 207 186 173 164 163 181 198 207 205 202 196 191 52 50 47 41 41 41 39 37 37 36 32 32 33 32 32 34 39 45 50 54 48 45 39 36 36 36 47 60 66 66 64 64 65 65 66 61 58 58 35 11 347 340 352 25 41 35 28 17 22 29 45 56 72 100 131 129 126 116 110 113 121 124 111 80 59 35 320 284 278 336 9 16 16 53 80 113 243 289 331 14 25 6 353 3 26 39 50 54 62 70 68 71 68 68 61 53 49 50 33 25 29 31 64 130 137 133 126 118 106 92 41 187 130 119 115 124 130 147 152 152 156 149 143 170 234 249 226 200 194 226 260 289 320 357 326 284 269 275 285 302 342 54 80 100 243 266 73 75 263 260 261 22 309 276 258 260 267 274 275 272 264 256 252 245 236 228 229 233 237 235 228 226 229 236 237 237 234 230 225 226 235 247 258 265 267 266 262 243 229 213 205 187 177 177 190 211 217 217 216 202 182 169 171 166 160 158 153 153 155 162 158 151 144 140 145 151 161 178 191 198 197 196 193 194 200 213 219 209 190 173 162 163 176 192 203 207 209 205 199 48 47 45 43 43 39 39 37 33 31 30 27 27 26 24 26 30 35 38 45 48 53 48 45 41 45 54 62 68 73 69 76 81 75 66 61 58 58 44 12 347 329 342 16 50 44 23 16 18 29 39 52 70 111 131 118 104 98 94 97 122 147 147 138 147 187 268 278 299 16 33 29 336 266 194 175 182 211 325 356 95 41 336 358 21 35 39 39 47 55 63 64 61 67 82 80 92 113 148 228 251 251 237 197 164 159 147 133 137 153 173 183 131 99 84 59 51 59 64 56 77 104 115 157 226 249 216 113 77 309 279 299 342 357 306 287 279 301 317 324 347 58 91 115 162 151 113 77 267 260 268 59 311 274 264 270 272 276 278 276 270 264 261 256 247 237 236 236 238 240 236 235 237 241 242 241 235 230 228 228 234 244 254 261 266 269 268 261 249 209 173 162 162 164 168 190 195 200 190 170 128 104 106 110 118 115 111 124 144 162 172 174 160 150 150 154 161 174 185 197 199 195 190 184 185 194 209 205 181 165 162 164 177 186 195 201 212 217 205 50 50 48 45 45 43 40 36 34 30 30 27 25 21 19 13 15 17 24 31 33 51 59 56 61 66 69 73 82 82 81 79 91 79 66 49 44 54 60 38 358 328 324 335 24 51 35 17 16 23 34 45 60 64 75 91 99 101 99 99 104 115 108 112 138 172 232 258 299 14 53 14 309 279 185 159 160 176 205 226 220 209 187 43 35 50 56 48 48 52 61 67 64 64 141 162 173 182 190 192 204 226 237 226 211 184 138 115 111 122 138 151 115 99 91 44 24 14 43 31 53 64 128 209 239 255 41 69 44 289 269 228 92 352 291 295 308 348 334 313 300 92 113 125 143 132 131 187 255 267 342 73 269 269 272 292 294 287 282 278 272 265 261 256 248 241 237 236 237 237 235 235 235 239 241 240 236 232 230 231 236 243 249 256 262 265 269 272 276 102 92 100 115 127 141 155 159 159 144 111 78 73 78 86 97 112 131 152 173 183 190 190 175 151 144 145 162 176 187 208 208 207 202 192 188 189 185 185 173 166 162 173 181 185 185 190 199 209 205 52 52 50 48 46 43 42 40 38 38 35 33 31 26 25 21 20 15 17 21 16 31 64 92 86 86 82 86 86 91 81 80 79 85 84 72 73 80 83 69 11 312 298 298 312 348 10 11 12 17 29 34 40 39 72 98 104 109 107 101 84 72 68 82 108 170 226 255 325 31 35 357 326 304 14 92 131 153 176 202 221 200 162 138 107 92 91 99 80 92 107 138 161 187 187 147 144 138 141 161 124 64 22 354 336 352 92 85 70 31 7 352 120 122 132 147 187 193 95 64 44 41 226 232 226 102 80 107 202 240 240 130 106 193 269 295 328 6 339 301 281 211 115 111 104 99 115 183 239 226 167 183 251 273 284 301 293 283 279 277 274 269 264 258 250 242 235 234 233 233 232 232 234 239 242 243 242 237 235 234 237 241 246 250 256 261 267 277 31 61 52 56 58 60 64 93 128 124 115 103 95 94 86 104 192 194 193 192 192 199 201 196 181 155 144 139 160 175 194 213 214 212 205 202 199 194 184 174 167 166 168 181 185 189 181 181 185 195 196 57 58 54 51 50 48 46 46 45 46 45 42 42 41 37 37 33 31 32 30 32 44 75 97 94 95 86 86 86 86 91 86 85 91 106 138 183 162 152 147 197 243 262 275 293 317 345 356 5 15 33 40 44 56 92 99 96 94 99 96 84 78 68 68 64 22 309 329 25 35 22 345 320 320 358 14 33 59 128 194 205 190 150 137 132 120 104 111 124 120 104 111 93 41 342 113 92 75 44 25 38 51 44 7 5 22 70 91 92 284 293 284 141 137 137 141 152 128 124 124 148 226 248 255 64 69 93 209 226 226 204 130 138 192 249 291 342 35 7 313 287 267 119 106 91 92 151 183 226 148 113 167 262 277 288 290 281 276 276 276 277 276 273 265 255 240 233 231 231 232 233 236 240 245 249 253 256 253 249 244 242 242 243 246 250 254 258 268 59 45 15 10 5 349 313 277 226 175 151 142 136 129 228 269 258 225 206 197 197 201 199 196 185 170 157 156 164 177 189 200 200 200 198 199 198 196 187 178 170 170 181 186 185 185 181 177 177 177 177 61 61 59 57 56 54 54 53 53 54 53 53 50 49 47 47 45 44 40 41 43 51 71 87 98 101 91 86 81 86 95 101 110 122 143 174 190 190 182 194 205 218 240 263 285 310 332 345 353 7 23 44 77 77 82 72 72 79 86 97 106 91 64 40 22 6 358 6 22 29 14 289 312 335 349 351 349 335 243 200 190 166 133 129 132 120 93 80 77 56 44 39 39 9 342 325 92 72 35 349 14 39 60 29 21 28 59 98 138 204 248 268 303 120 138 141 137 144 170 197 204 216 228 22 53 41 248 233 215 172 130 130 157 192 226 267 352 80 141 255 275 321 77 110 111 148 193 148 124 64 148 204 251 269 278 275 270 270 272 275 278 279 278 274 266 249 235 231 232 236 239 242 248 254 258 261 264 263 260 256 249 246 243 244 241 233 213 190 263 324 323 316 309 301 280 267 240 192 176 168 162 171 235 265 269 232 202 189 194 195 197 191 188 185 174 165 166 175 184 191 196 192 189 189 190 195 186 177 173 172 170 176 169 170 171 167 166 166 167 63 64 62 63 60 58 60 60 60 59 60 59 55 54 51 50 49 47 46 45 47 52 63 80 95 91 80 72 67 74 91 115 137 147 159 183 166 166 174 198 216 226 233 253 279 304 325 336 342 359 12 53 73 82 84 82 77 81 91 115 115 106 84 72 31 357 349 331 326 311 321 329 342 334 326 304 306 306 299 141 108 98 84 99 108 104 72 74 73 70 49 35 29 357 326 299 107 104 64 306 326 20 60 49 21 19 33 64 104 151 243 309 321 303 197 175 160 153 172 202 243 102 73 56 41 251 243 240 167 115 124 184 194 184 141 148 211 197 205 231 289 340 58 96 108 148 240 102 95 228 239 238 243 258 261 258 257 261 265 270 274 277 277 277 273 262 245 237 236 239 242 245 245 248 252 254 256 258 259 259 257 249 240 231 209 178 161 157 175 269 292 291 286 278 274 267 258 229 177 168 171 177 207 230 245 213 188 181 186 189 187 181 185 186 186 174 171 171 181 186 191 192 192 187 182 175 166 149 132 132 126 119 101 115 120 130 139 152 153 67 68 66 64 65 62 62 62 63 62 63 60 58 58 57 55 54 52 51 50 50 52 59 75 79 78 71 71 69 76 94 105 111 112 114 112 119 123 129 147 189 218 236 275 305 321 332 343 353 352 20 53 64 75 80 86 91 98 119 144 138 126 118 119 120 95 311 298 304 336 24 20 348 313 301 289 311 326 335 31 91 96 91 77 75 70 59 60 62 65 56 40 22 348 312 299 93 115 128 281 289 56 77 70 20 357 357 35 64 92 64 354 311 289 248 209 162 115 92 56 336 22 64 95 243 248 239 226 128 120 139 170 152 119 77 43 281 262 251 269 320 21 64 81 100 141 161 193 226 248 247 248 243 242 243 244 248 252 257 264 268 272 274 277 277 274 262 250 243 242 244 246 246 244 248 249 253 256 258 258 256 243 225 206 185 169 159 158 169 205 250 264 270 272 274 276 280 284 269 226 194 187 190 193 194 181 175 175 181 178 175 174 177 181 181 177 170 165 166 175 189 196 189 166 143 132 112 98 85 78 72 54 50 33 25 20 24 14 22 70 68 66 67 65 64 64 65 65 65 64 64 63 62 62 60 61 59 58 58 57 57 58 66 75 84 94 107 114 114 114 110 106 106 106 104 101 95 88 87 79 50 19 359 359 3 4 353 352 357 44 64 64 64 69 78 82 80 124 139 108 91 84 91 106 130 216 255 303 44 59 43 284 269 269 263 77 16 331 312 139 125 114 97 72 61 48 35 38 53 64 50 20 320 291 298 41 115 138 202 258 80 84 83 325 321 354 53 53 53 53 35 348 313 283 251 148 80 77 342 268 226 184 197 248 247 234 170 124 115 92 73 83 84 83 228 262 269 283 301 11 72 86 91 115 141 161 228 258 249 243 238 236 237 240 243 247 250 254 258 262 266 271 276 279 279 273 264 255 250 252 253 253 251 253 257 265 267 267 266 256 233 210 189 185 181 178 171 176 191 219 240 256 264 274 279 286 292 286 269 236 211 193 181 173 167 165 168 170 170 170 174 174 175 171 167 162 159 160 175 189 182 159 137 115 101 86 74 68 56 45 35 12 358 349 349 348 348 348 72 70 66 64 65 64 63 63 64 65 65 66 66 66 67 67 68 68 67 67 66 66 68 73 87 102 120 129 129 126 119 107 102 97 94 86 71 56 48 45 41 34 26 17 11 13 8 359 358 20 82 91 82 72 72 74 68 24 356 44 91 91 84 84 104 157 197 266 43 53 35 266 251 253 243 92 75 38 326 301 243 138 116 100 81 64 38 348 348 20 60 70 31 298 295 319 24 91 124 167 226 92 98 101 289 304 356 59 53 35 35 54 25 326 275 226 156 132 157 226 236 215 190 204 239 260 243 113 108 106 91 64 75 92 151 226 251 274 304 328 33 64 91 115 130 141 102 266 269 253 242 237 235 239 244 250 254 258 262 264 266 268 270 273 276 278 277 275 272 266 263 263 266 268 272 278 279 280 282 280 269 236 211 192 190 195 201 193 187 189 202 223 243 254 266 270 269 265 264 251 221 200 182 158 145 140 140 137 141 153 168 181 186 177 170 163 163 162 163 171 163 147 124 108 96 86 79 72 64 60 51 14 336 299 293 279 289 289 286 69 67 65 63 63 62 61 60 62 63 64 65 67 68 71 72 72 75 75 74 74 77 82 89 98 109 120 125 126 114 94 74 63 55 45 30 12 7 6 12 17 20 17 12 6 5 6 8 6 56 101 97 94 91 95 104 119 128 102 64 84 103 104 101 73 43 31 31 44 11 329 277 269 268 53 70 56 11 298 294 293 95 98 100 97 128 228 268 279 303 80 98 43 312 295 334 20 69 128 161 141 92 104 115 255 289 14 72 77 22 14 64 44 299 276 235 162 133 166 231 240 216 170 161 263 321 9 44 82 91 91 83 92 141 226 249 269 298 331 358 17 29 56 120 138 120 73 303 262 253 248 241 237 241 245 251 256 261 264 267 269 271 272 272 275 277 279 281 281 278 275 277 279 286 287 285 282 277 269 259 243 232 218 205 196 198 208 211 193 185 189 202 219 235 239 238 231 220 204 183 159 138 115 97 86 80 85 84 101 151 197 218 208 190 176 166 157 157 145 137 125 116 100 91 86 78 83 82 92 92 124 211 226 232 231 231 235 235 235 63 63 61 59 57 56 55 55 56 57 57 58 63 66 66 70 73 74 77 75 76 78 83 90 97 101 100 90 75 56 54 51 38 21 4 347 334 332 334 348 2 11 12 6 2 2 5 10 25 67 66 66 87 102 108 118 126 126 100 60 64 84 99 108 120 64 41 22 22 284 269 262 277 329 33 66 24 312 289 294 304 11 91 115 132 182 204 237 281 290 95 108 92 336 301 319 342 43 148 95 80 78 98 120 228 281 43 75 82 325 342 44 31 299 284 248 166 160 181 226 232 148 82 56 356 349 5 22 38 59 92 115 156 190 211 251 335 12 35 24 321 311 325 64 92 84 56 251 250 253 254 251 243 239 240 244 249 252 257 262 266 270 273 273 274 276 279 283 285 285 285 287 291 291 285 279 273 266 250 242 235 228 217 209 203 202 192 202 184 172 168 175 174 162 152 132 125 113 101 96 82 73 64 64 68 68 84 115 147 183 209 216 211 161 139 124 111 106 104 103 105 104 100 91 83 92 124 141 151 184 197 220 230 229 225 218 218 213 215 58 58 56 54 52 48 46 45 45 45 45 45 45 48 52 57 63 67 67 65 60 56 57 65 68 67 56 42 42 48 66 77 69 352 289 283 285 299 319 340 357 7 13 11 5 2 2 13 30 66 61 64 80 91 86 61 45 48 52 48 53 58 77 111 138 162 152 161 266 279 279 293 326 349 25 72 14 306 295 301 312 336 92 113 116 118 92 43 342 289 263 130 115 303 294 291 311 352 41 77 83 84 91 124 193 342 64 67 51 339 342 16 72 336 284 255 220 190 175 170 128 101 77 56 325 304 335 9 20 31 193 204 198 182 166 92 36 40 44 211 226 243 22 59 64 77 243 243 242 249 259 264 263 249 242 239 242 248 253 258 262 267 273 274 275 277 278 280 283 286 290 292 291 287 282 277 266 250 242 237 234 228 217 214 211 212 184 148 41 22 93 92 91 91 95 101 106 100 87 77 70 65 64 64 82 120 172 182 190 192 194 187 148 113 101 91 84 84 91 98 103 106 111 115 130 185 209 209 212 208 221 233 235 235 229 225 216 208 216 49 47 43 43 39 36 35 33 30 28 26 26 24 26 27 31 42 54 58 54 52 45 42 47 68 74 64 39 33 38 69 107 211 251 258 264 279 297 321 340 353 2 6 7 9 7 6 17 36 68 98 98 97 91 70 35 4 9 31 54 50 44 51 92 107 120 115 92 22 319 319 339 358 358 33 67 64 293 289 294 294 304 342 99 91 86 59 31 309 269 255 167 127 148 279 283 298 321 14 64 101 115 138 187 240 43 77 64 24 324 342 29 84 290 277 269 281 102 92 84 70 75 73 167 197 226 325 354 352 211 220 221 212 173 111 84 53 263 239 220 167 104 70 70 77 243 248 247 249 248 257 265 270 266 262 255 251 251 253 255 259 267 273 279 280 281 277 276 277 286 296 305 303 296 289 281 267 250 238 233 232 225 218 213 215 197 124 64 41 325 352 64 77 76 91 98 106 103 97 91 84 92 167 194 198 200 205 208 198 183 183 183 170 130 106 104 100 92 92 108 112 121 129 133 153 183 232 243 240 238 236 239 235 235 233 235 231 218 243 37 30 29 26 23 19 18 14 11 7 7 7 10 11 12 20 41 66 78 82 73 64 51 57 70 97 99 92 43 14 14 352 312 295 289 287 300 313 321 331 344 353 357 2 8 18 22 29 56 97 121 125 118 113 108 64 329 334 16 56 60 16 9 354 43 80 100 100 64 311 312 357 6 352 349 342 303 277 281 283 298 311 14 84 91 101 263 243 239 239 255 161 126 151 243 277 306 348 9 64 130 138 138 139 95 56 99 113 303 312 356 44 80 228 260 276 329 20 44 66 29 342 267 204 173 147 113 303 251 212 198 182 162 108 91 104 226 234 226 193 82 78 72 92 202 235 243 251 250 246 247 254 263 267 268 266 261 257 254 253 258 264 270 274 276 276 267 263 273 289 307 314 310 296 285 278 267 250 236 228 222 222 213 211 200 184 141 161 216 248 267 73 78 75 80 96 108 118 129 159 205 214 214 210 210 209 205 198 188 182 182 182 164 138 124 118 131 139 139 120 115 132 140 139 145 172 260 264 260 256 245 243 239 236 236 233 235 220 216 19 10 6 6 2 359 356 356 354 354 354 359 8 14 21 35 55 78 87 90 84 78 70 61 58 75 91 83 69 38 29 19 342 309 298 289 289 295 307 322 336 345 354 2 12 31 45 52 70 91 110 124 121 121 124 130 102 354 31 80 101 102 309 321 354 64 92 115 185 216 202 92 29 346 326 321 313 298 291 283 293 299 43 84 103 138 220 235 232 226 266 102 113 144 204 255 312 348 6 7 31 92 115 124 120 120 124 124 102 336 14 240 226 226 239 268 336 16 51 83 342 279 269 248 139 119 120 267 268 255 139 115 105 79 107 202 226 251 41 72 77 92 128 194 221 229 233 242 243 239 233 239 248 257 261 264 262 258 255 251 253 254 257 260 263 261 248 233 236 264 277 265 243 238 253 258 258 243 225 212 218 216 216 215 204 184 184 194 212 232 237 95 77 68 68 78 98 137 171 202 218 223 219 214 210 202 199 192 181 177 176 166 138 119 127 132 149 164 162 157 152 153 153 151 153 166 232 254 258 258 259 254 245 239 236 233 231 218 216 359 356 352 350 348 343 343 344 344 346 351 2 15 28 41 48 55 68 69 73 72 71 66 58 58 44 44 44 38 29 31 266 251 258 275 285 302 317 325 328 339 351 2 12 26 42 56 58 60 75 99 112 110 110 118 143 147 167 185 170 162 170 226 284 336 69 92 185 212 192 156 118 92 336 304 304 301 304 298 294 299 352 69 78 79 124 226 251 228 41 31 11 43 93 161 263 352 33 29 12 349 11 73 115 124 124 111 99 64 356 299 243 235 240 237 102 64 72 92 139 194 239 269 291 35 82 139 243 269 298 69 86 86 75 228 248 239 309 44 75 100 167 221 220 219 223 230 236 240 239 228 225 230 245 255 262 263 259 251 243 243 246 248 252 255 253 243 224 215 218 229 225 219 215 222 231 239 219 198 192 205 216 226 226 216 202 197 218 232 239 267 41 77 72 67 72 82 138 176 204 221 223 220 207 199 196 193 182 175 159 156 147 130 124 138 147 153 159 166 173 174 174 168 155 155 168 205 230 243 254 256 253 250 241 236 243 247 248 248 344 342 340 338 339 338 337 338 342 350 359 17 45 61 66 61 53 41 26 34 42 41 41 49 64 44 25 357 321 268 247 243 245 251 274 301 316 324 329 334 350 8 28 28 32 41 70 70 67 59 82 98 100 103 122 143 149 149 138 107 115 139 185 263 22 83 124 197 247 190 155 140 164 215 238 246 258 264 262 268 284 352 64 54 39 331 313 311 31 59 44 16 9 354 352 22 53 64 56 7 331 335 24 69 83 72 72 84 64 311 293 269 262 279 329 53 84 100 124 211 197 226 299 328 348 342 194 226 261 311 38 70 84 124 255 268 267 354 44 77 157 231 238 235 224 224 229 239 245 248 243 231 225 233 254 263 268 264 254 239 237 242 247 252 255 253 245 228 215 211 220 221 217 213 214 212 207 189 177 177 193 205 212 226 226 226 237 255 268 279 293 299 290 240 95 95 95 170 189 205 222 225 216 190 182 190 192 184 151 139 167 167 147 152 144 149 143 149 156 173 183 183 172 147 138 147 183 220 238 245 249 247 245 245 248 251 255 255 262 338 337 338 337 338 338 341 348 356 7 24 41 58 58 61 53 44 25 358 351 358 7 24 72 83 80 325 278 257 253 256 265 273 284 297 309 316 319 324 334 5 50 54 54 33 24 56 75 60 50 44 60 70 67 77 113 124 124 127 124 130 120 113 73 64 80 120 243 246 210 160 153 183 226 230 226 215 220 232 258 284 22 70 56 7 317 309 320 64 67 44 357 348 345 11 59 67 67 69 325 289 304 14 64 72 51 51 72 80 290 281 280 284 312 351 33 60 72 14 336 352 102 240 290 293 258 243 238 258 325 44 91 115 184 243 251 263 102 124 161 209 241 246 247 235 230 230 238 247 254 257 246 230 223 246 260 266 270 270 261 250 247 248 251 252 249 243 230 220 213 220 225 228 223 215 205 186 169 158 155 163 173 197 237 243 255 268 289 301 304 298 294 293 290 228 216 212 215 215 226 226 211 148 161 187 202 226 226 211 202 194 192 183 152 144 138 138 144 162 200 208 200 183 185 228 251 248 249 254 258 255 251 249 245 248 258 258 258 258 338 338 338 338 340 345 359 12 26 38 48 51 48 45 45 35 20 303 284 289 293 325 102 128 152 174 211 232 243 249 266 283 295 301 306 313 314 314 319 335 24 59 59 59 44 16 33 53 48 37 28 41 41 25 5 14 44 91 115 138 156 144 138 107 92 113 187 253 251 233 162 155 182 230 231 226 211 267 281 286 299 43 78 83 354 295 295 311 64 75 53 342 320 356 29 67 59 93 194 218 239 255 124 92 84 51 44 53 100 211 261 263 284 14 22 29 33 29 357 326 293 216 183 184 255 269 275 275 286 336 53 83 101 151 237 243 226 200 194 203 213 231 243 248 246 239 231 236 246 254 259 253 242 231 236 245 254 263 265 263 256 249 246 245 247 245 239 227 215 210 213 217 221 223 213 198 170 149 139 128 110 77 335 317 309 309 304 298 295 298 300 313 319 321 228 204 215 226 248 278 293 299 342 193 202 216 239 232 226 215 208 200 183 156 149 138 152 183 208 218 212 201 193 202 221 236 243 245 248 253 254 253 250 251 259 265 260 256 245 340 340 340 344 353 7 33 48 52 55 57 57 51 41 22 349 312 268 268 304 331 357 336 251 226 225 234 255 266 276 282 292 301 306 312 318 323 332 11 101 75 50 29 29 25 21 24 34 42 28 25 31 45 25 352 353 19 64 84 111 144 156 143 126 124 167 218 251 259 253 208 174 182 205 183 141 64 356 311 289 325 92 98 112 226 269 275 321 51 78 44 321 293 342 92 115 185 212 211 194 228 325 22 92 111 104 93 73 77 268 262 269 80 75 56 7 9 356 336 298 283 261 185 151 187 269 280 293 339 25 54 77 101 151 234 247 241 225 215 217 224 234 245 253 259 261 258 256 256 258 255 252 249 242 236 235 236 242 246 249 250 247 244 241 241 236 230 215 207 201 205 202 198 191 181 168 149 130 114 98 72 23 339 318 312 305 301 295 289 286 304 342 11 31 93 128 167 226 268 275 263 247 200 192 204 226 230 230 216 205 200 192 173 164 166 175 202 214 219 214 207 199 191 191 200 214 220 225 228 235 239 243 245 247 253 255 251 250 238 343 348 353 3 24 30 45 48 51 45 56 61 53 40 12 353 331 328 339 358 359 352 313 281 261 263 273 285 296 299 301 303 304 314 338 354 359 4 29 64 75 64 33 22 25 25 19 15 17 14 14 33 60 35 339 334 29 58 66 59 43 41 92 111 130 204 221 235 249 269 278 240 120 119 92 64 35 304 286 268 148 108 112 131 226 249 261 321 64 91 43 311 293 228 172 173 212 226 41 77 22 349 293 148 130 138 138 139 151 226 258 311 45 53 35 301 298 284 228 255 269 269 243 204 200 247 276 301 29 40 54 80 115 152 218 248 249 243 235 234 236 243 254 264 276 282 284 282 274 263 249 244 244 247 243 235 231 235 241 245 245 244 242 237 231 227 220 209 203 198 197 189 181 170 163 156 143 122 101 80 54 13 338 318 313 313 313 310 304 267 342 43 53 59 59 69 77 263 260 264 253 235 189 182 194 218 225 230 216 198 190 189 189 188 196 202 209 212 212 204 199 198 194 191 188 195 198 198 202 210 220 220 228 233 237 242 245 247 248 357 5 26 48 64 52 41 34 45 53 64 54 50 49 40 19 347 342 331 322 301 281 274 284 293 299 309 311 316 318 323 331 349 26 50 48 26 3 7 21 45 58 51 29 33 14 358 358 12 22 14 14 16 348 324 334 40 58 56 14 14 33 67 92 187 232 236 243 269 308 346 23 70 99 107 240 268 255 257 251 148 91 91 102 269 269 284 11 64 92 104 325 312 311 266 243 267 14 44 56 11 311 281 64 92 101 107 151 194 226 258 299 29 59 22 283 269 243 184 218 243 255 240 220 204 228 354 16 39 31 263 258 170 173 208 247 260 264 261 255 251 254 262 270 278 281 281 279 276 273 265 256 253 253 250 243 235 235 240 244 245 242 237 231 225 220 213 207 200 195 187 175 165 156 156 154 145 123 101 78 53 4 334 321 319 318 318 316 313 314 318 345 348 357 357 357 342 293 275 274 269 246 205 190 192 206 214 217 205 196 190 185 192 200 210 210 210 206 200 193 185 185 185 185 185 185 185 188 192 202 209 216 219 225 228 233 239 251 263 21 30 42 60 77 82 66 49 49 64 60 44 25 38 75 56 329 304 293 269 254 259 273 300 324 336 342 336 326 323 337 5 48 57 60 64 53 25 3 13 30 53 60 51 38 6 6 22 29 33 20 345 331 318 322 342 35 60 44 357 358 38 64 22 284 278 269 281 336 7 23 45 79 115 166 215 235 246 257 268 64 79 75 336 293 313 357 19 22 53 104 77 342 324 312 281 263 77 80 73 228 263 352 53 64 64 31 290 255 258 258 243 92 113 228 269 278 284 303 268 269 269 269 266 73 70 44 29 352 228 251 255 226 209 226 265 278 283 280 272 266 266 270 274 279 277 272 267 264 264 263 260 260 258 256 249 241 236 239 241 242 239 236 230 224 217 207 200 193 184 172 161 156 157 159 156 149 134 121 104 73 335 321 318 313 310 308 305 305 303 300 295 302 302 300 300 285 275 269 273 269 253 219 201 195 197 202 204 202 197 193 189 193 201 209 206 199 189 186 177 173 170 174 177 181 181 181 185 195 201 210 217 219 223 223 225 225 238 248 54 52 48 48 72 82 74 60 60 77 72 56 321 290 211 184 255 275 274 269 269 278 294 314 330 348 352 326 313 309 335 53 78 81 68 64 60 44 23 9 17 44 70 60 39 25 25 25 12 345 299 304 326 339 349 14 29 39 20 345 339 44 72 342 268 278 286 281 263 107 91 64 53 78 107 226 249 263 283 284 124 119 131 226 269 269 31 44 5 357 73 108 93 311 291 269 226 130 91 53 320 329 354 22 56 64 24 326 313 306 304 22 72 92 303 293 339 349 349 324 304 295 294 357 44 66 29 329 281 266 284 293 279 267 251 294 287 279 272 270 272 279 288 284 280 271 264 256 251 251 257 258 258 259 260 255 245 237 236 236 236 233 230 225 218 210 199 188 178 168 157 152 151 159 162 162 159 152 149 157 189 231 251 261 270 274 274 278 280 278 270 260 255 252 256 258 258 254 253 256 256 252 231 210 195 192 193 198 202 199 198 198 200 202 203 195 186 177 167 164 165 165 170 178 181 184 184 188 197 206 212 217 221 223 220 218 218 221 230 75 72 54 36 45 48 44 22 44 77 100 124 268 248 220 198 230 254 265 274 289 305 314 323 332 339 11 11 6 358 7 35 75 84 70 50 39 25 7 342 342 29 72 53 40 31 29 14 339 312 304 329 7 25 33 44 24 356 335 335 357 44 82 141 248 251 268 268 243 151 124 97 72 54 24 304 285 293 295 291 267 167 149 175 182 189 118 84 7 328 345 84 104 263 283 277 268 161 100 69 357 328 326 290 237 148 73 329 313 301 284 77 75 70 336 319 342 349 342 328 304 298 301 357 56 72 31 311 289 325 266 255 258 243 240 290 269 264 260 264 273 284 295 279 267 264 259 253 249 253 258 260 263 265 267 263 255 243 240 236 234 234 229 219 211 199 187 175 165 158 155 155 155 162 171 178 181 172 175 181 195 209 221 231 240 244 247 251 254 260 247 231 217 218 222 229 230 233 231 237 242 243 228 209 194 187 190 195 200 205 213 216 214 213 198 189 175 177 169 166 167 171 175 181 189 189 190 195 201 207 211 218 223 222 218 216 215 220 220 64 75 66 54 35 29 22 5 35 64 84 102 255 255 241 229 228 249 265 291 317 324 324 334 353 12 40 53 53 40 25 17 44 70 77 44 14 358 339 326 342 56 70 73 44 7 321 293 293 312 348 6 22 29 53 113 161 226 279 329 9 44 69 148 258 243 251 266 290 148 132 121 115 113 266 284 295 317 326 331 322 321 128 118 113 108 91 79 35 321 340 38 122 202 269 283 293 342 113 128 148 293 313 319 309 124 124 263 279 279 266 93 80 44 335 324 331 357 335 306 291 291 306 357 56 70 77 299 294 304 268 258 248 148 148 248 266 267 265 270 276 281 265 256 255 258 262 265 283 274 269 270 272 272 272 267 261 253 241 234 233 231 223 214 203 190 173 163 159 154 154 154 158 162 173 186 200 199 191 187 200 209 219 225 231 235 232 235 234 230 221 209 199 198 202 207 208 206 202 208 217 221 210 198 187 186 189 196 198 207 214 222 229 230 215 198 182 176 172 169 170 177 181 184 190 192 193 198 204 212 212 217 220 219 218 208 209 234 243 56 61 64 59 53 35 29 25 39 60 80 211 261 258 250 247 253 265 284 314 329 332 340 10 17 31 40 64 72 64 35 15 23 50 84 92 43 342 345 357 14 45 70 81 59 342 298 268 266 22 29 22 19 6 357 342 325 284 281 325 38 44 25 345 289 255 202 185 226 216 172 147 163 182 205 215 243 321 342 331 310 312 43 85 86 82 76 80 59 328 313 284 173 212 261 295 328 335 325 95 128 161 279 284 289 303 95 93 293 304 325 64 69 64 321 311 311 342 304 286 269 269 304 337 38 84 108 95 309 306 294 278 268 41 64 309 283 280 277 273 269 266 253 253 255 263 273 281 291 281 273 273 273 272 270 268 265 256 245 238 231 225 222 209 192 177 165 155 155 155 156 156 157 165 175 187 202 207 207 202 200 201 206 217 221 223 213 205 195 194 197 196 192 191 191 190 190 187 184 187 193 197 190 186 181 186 191 195 193 197 204 217 229 232 229 216 198 182 187 186 189 185 185 188 191 193 193 198 204 214 217 214 214 209 203 208 216 230 239 64 56 64 228 141 92 69 44 24 342 243 240 258 264 269 279 287 295 310 324 336 334 344 24 72 44 29 56 70 67 29 358 352 6 59 106 92 64 354 357 358 358 51 83 92 352 304 312 354 44 51 25 5 5 358 352 342 329 356 35 54 38 335 301 286 267 187 167 184 209 197 152 169 181 186 177 163 147 309 301 293 284 263 100 108 118 131 137 144 226 263 247 205 192 281 313 332 328 320 352 113 138 172 237 268 352 44 44 321 304 325 64 75 69 336 311 304 293 277 269 257 261 279 326 51 84 104 111 102 289 284 286 290 43 43 321 289 283 277 266 254 250 250 261 267 275 278 281 283 279 276 276 273 269 267 267 270 273 265 253 241 232 218 205 186 169 159 156 156 156 156 156 159 162 165 177 192 199 203 196 182 175 176 187 187 182 174 168 169 176 177 181 181 181 181 181 181 178 171 174 178 181 181 181 181 185 190 193 191 193 195 206 223 235 240 233 219 205 203 202 200 192 189 193 196 198 198 202 207 217 217 217 220 213 205 207 219 225 228 100 120 141 167 130 100 92 41 266 258 249 258 269 280 295 317 317 319 326 332 340 337 329 64 101 72 56 39 60 59 11 348 349 6 50 70 83 77 22 354 348 358 22 56 91 141 284 304 342 53 51 9 342 354 56 352 321 311 356 53 83 124 243 276 289 325 22 43 43 22 41 95 120 139 147 144 132 126 263 284 281 269 251 141 143 169 187 185 181 188 216 205 182 147 124 329 318 306 293 284 124 120 131 102 22 44 44 14 284 267 95 77 75 31 304 286 269 260 261 262 269 279 321 24 67 84 108 152 184 255 283 298 336 44 22 268 261 267 264 260 251 250 258 270 275 277 283 287 289 290 291 288 281 273 267 270 274 281 285 279 264 246 230 210 187 168 163 163 160 160 155 159 162 163 163 167 177 181 182 162 150 144 143 148 145 141 143 144 156 159 168 175 176 181 177 177 174 171 167 168 171 172 176 178 181 183 185 185 186 189 192 198 211 223 227 228 220 212 204 198 197 197 197 199 202 206 206 207 214 217 222 229 235 232 232 222 223 223 220 111 115 107 92 82 84 92 228 261 262 269 280 293 300 308 313 313 314 321 328 349 358 358 33 60 66 60 44 33 44 35 7 22 29 35 44 50 56 44 29 21 9 4 14 73 157 202 266 22 64 59 14 293 290 95 243 255 268 263 148 139 170 202 251 342 12 23 23 11 358 351 7 51 61 58 54 84 111 151 277 293 300 306 342 120 130 167 226 211 157 152 162 138 115 104 342 289 278 268 243 124 92 84 64 44 38 14 309 279 255 124 92 77 290 269 262 239 234 277 286 304 348 20 59 75 91 101 113 148 290 291 294 311 22 237 243 245 251 258 267 266 266 262 266 270 275 288 299 310 310 305 297 287 278 270 270 275 281 283 283 280 269 249 226 189 171 160 160 159 155 153 155 155 159 162 160 158 163 162 150 143 142 148 151 155 158 162 175 182 182 182 182 187 186 181 174 171 168 168 171 175 172 175 178 181 181 181 181 181 181 186 192 201 206 215 217 211 204 200 198 197 199 201 207 207 207 212 214 217 222 225 232 235 238 234 230 223 216 217 84 72 59 38 29 14 263 258 262 262 269 283 291 293 281 281 289 300 318 348 29 44 41 38 48 56 64 64 44 51 51 44 50 29 19 14 39 58 53 35 358 322 309 306 321 41 124 77 59 60 29 348 313 339 345 293 268 284 356 325 342 148 73 53 31 26 26 33 7 344 327 340 7 67 44 35 29 92 162 232 255 276 300 326 44 75 44 342 329 56 83 75 56 64 99 102 279 279 281 303 56 64 70 67 69 95 202 255 268 289 22 80 92 267 269 269 267 266 278 277 286 329 44 67 75 84 83 64 35 342 298 286 278 255 249 250 253 255 264 275 272 267 261 256 262 275 297 308 316 312 304 294 285 276 267 267 273 279 284 286 284 275 263 243 200 169 162 157 157 153 149 148 150 149 151 155 153 156 152 144 150 151 162 169 181 189 194 194 194 190 190 186 190 185 181 178 175 172 175 175 178 175 175 178 178 178 178 178 178 178 181 188 195 198 202 207 200 197 192 191 195 201 207 207 207 202 209 217 220 223 221 223 225 228 228 223 220 219 218 119 92 41 303 251 243 239 243 251 261 269 286 289 295 298 306 320 345 6 25 45 66 58 45 41 53 66 77 83 83 82 82 75 35 357 334 39 72 84 64 284 276 277 304 348 16 51 64 92 120 124 336 331 351 337 324 298 326 351 351 348 11 64 50 19 342 345 352 22 326 321 314 324 53 59 35 342 290 197 182 198 234 298 313 354 100 120 193 284 22 69 70 39 39 67 43 311 304 312 14 64 75 72 93 167 194 226 243 293 339 35 72 100 243 269 284 267 267 251 261 255 102 82 70 60 69 72 67 24 311 284 277 277 269 269 266 265 261 263 265 267 267 267 267 277 288 296 299 301 298 292 287 283 274 267 263 269 281 280 281 274 269 257 231 202 181 167 162 162 155 153 149 148 149 153 160 168 174 183 184 172 166 171 181 188 197 198 198 199 196 192 189 185 181 177 175 172 172 175 178 178 181 178 178 172 172 172 172 175 178 181 185 189 196 197 197 189 189 185 189 196 202 207 212 212 207 210 216 223 221 219 211 211 213 214 216 214 218 221 183 197 243 234 237 211 211 226 263 336 348 357 357 358 358 4 22 29 35 37 48 56 66 60 39 40 49 67 92 104 104 100 91 69 357 337 5 92 138 216 251 251 124 44 33 29 22 35 139 138 126 113 342 311 306 306 304 345 358 352 337 348 64 50 6 317 313 321 41 336 318 308 300 284 128 187 237 260 226 170 151 240 320 309 304 102 138 141 303 352 80 91 72 53 53 77 321 298 306 9 56 91 128 202 197 211 263 321 348 6 33 72 111 197 251 269 258 258 268 284 352 64 77 67 51 11 53 72 22 279 275 283 283 281 275 269 270 264 264 267 275 282 289 287 291 294 294 291 289 290 285 283 280 275 270 263 261 265 269 266 261 250 236 222 203 190 177 173 168 164 160 160 156 156 164 172 176 188 190 216 211 185 183 182 186 191 191 191 191 188 189 186 181 181 177 170 171 172 178 181 181 181 181 181 178 176 174 176 178 181 183 189 192 194 191 191 184 184 185 192 200 210 215 215 213 214 215 216 218 215 210 201 202 205 212 218 221 230 233 260 279 298 354 44 59 44 56 56 53 44 44 40 36 26 26 28 49 44 25 19 39 67 75 56 29 19 5 358 20 53 72 83 75 11 306 298 251 228 290 342 6 26 41 36 25 5 349 354 107 130 172 202 251 281 336 20 29 6 331 304 312 22 91 43 308 277 243 202 216 243 261 261 234 183 173 197 226 161 107 92 43 329 308 312 336 77 72 44 357 44 92 106 82 80 120 185 237 298 345 35 108 130 161 102 43 11 348 358 6 33 51 77 187 248 262 268 281 299 321 44 64 70 56 44 33 51 77 240 260 269 276 276 269 259 262 264 265 270 275 280 287 295 296 298 302 302 301 296 284 272 267 270 272 270 262 253 249 253 252 250 239 229 216 213 198 189 181 177 170 167 167 170 169 177 181 181 192 202 220 226 216 184 174 176 181 181 181 181 181 181 186 186 181 177 177 174 174 178 181 181 181 184 188 181 178 173 172 175 178 181 181 181 181 181 181 181 183 189 195 203 212 217 217 215 212 212 213 210 209 202 202 205 212 222 225 232 236 241 285 283 299 93 72 56 44 38 44 35 38 44 45 48 41 37 45 66 56 16 337 6 44 77 75 56 38 22 5 5 22 33 54 50 29 339 328 345 29 33 28 17 19 31 69 51 14 347 334 329 263 211 263 342 22 77 69 53 309 289 283 286 263 130 183 215 236 226 212 204 226 237 228 148 95 53 24 356 22 92 115 167 251 279 306 342 44 67 44 357 349 35 91 83 80 124 226 268 298 335 11 92 92 82 51 56 53 352 356 11 53 53 43 263 260 262 269 284 325 354 59 60 49 44 44 51 64 102 237 253 262 260 255 259 258 262 263 267 272 274 277 282 289 298 304 308 309 301 291 275 255 248 252 261 270 276 265 257 258 258 256 248 233 222 219 209 199 195 186 173 166 170 170 177 181 185 185 194 205 214 216 208 183 166 163 166 168 174 177 181 185 185 185 181 181 181 181 181 185 189 188 188 188 196 185 174 159 156 155 155 146 148 153 163 176 186 188 190 193 195 201 207 213 213 212 208 208 210 209 206 200 204 209 217 220 225 232 232 232 301 293 228 141 115 72 54 40 35 35 35 31 31 44 56 59 75 67 67 7 337 346 33 84 91 91 80 72 51 33 12 19 37 34 13 348 350 358 29 38 31 299 268 237 161 120 107 309 294 291 311 354 14 356 24 80 92 113 253 263 275 301 321 342 187 263 321 342 336 325 329 342 354 53 51 22 358 346 339 14 124 183 218 258 298 325 64 104 128 148 336 31 69 100 148 268 260 298 331 357 16 44 72 72 69 64 43 22 11 53 72 124 226 248 251 251 248 303 22 44 67 64 54 49 39 29 240 226 239 247 249 249 248 254 260 264 267 270 276 278 278 284 289 295 296 296 295 288 281 271 261 254 252 262 272 281 277 273 273 273 274 275 262 247 231 221 205 196 182 166 150 153 162 167 173 177 181 186 192 193 189 182 172 164 162 165 173 177 177 185 188 188 185 181 181 181 181 189 192 192 189 190 187 181 166 155 148 148 144 141 130 129 153 189 205 205 205 209 207 206 203 206 207 211 211 208 208 208 206 207 204 209 212 217 219 222 229 229 228 35 44 73 92 92 77 64 53 49 54 51 6 358 356 56 82 77 54 33 358 339 326 44 84 97 83 82 75 84 80 41 43 56 56 12 343 327 340 358 5 348 320 312 326 356 56 113 187 289 304 342 358 358 334 348 20 53 325 276 280 313 5 5 358 351 352 4 19 23 5 343 329 344 29 67 64 342 318 317 331 329 309 267 268 268 228 193 124 131 131 141 73 92 115 170 209 255 325 31 51 33 25 31 64 77 22 14 24 38 53 113 194 226 240 260 237 211 56 51 56 60 67 75 59 14 299 248 236 231 231 235 241 247 256 267 270 274 276 282 286 286 289 289 291 289 286 285 281 279 276 271 268 264 266 267 272 276 276 276 281 287 291 291 289 293 266 148 128 107 104 106 112 124 133 140 140 148 141 137 137 131 128 102 161 157 159 162 170 176 181 181 181 172 173 177 177 181 189 194 196 193 188 182 162 160 156 156 157 154 154 156 164 192 213 217 217 216 216 220 218 215 208 205 205 207 207 207 204 202 199 198 200 205 212 218 225 228 228 228 60 56 56 44 44 45 40 50 56 67 59 7 348 335 31 72 70 35 5 334 319 320 342 59 64 50 33 38 75 73 342 64 72 66 15 340 324 356 9 12 359 349 337 334 337 6 29 19 343 330 327 331 328 322 344 358 5 331 308 300 339 19 25 342 325 326 6 40 45 358 323 311 317 349 50 82 161 279 301 328 337 344 351 357 357 342 11 35 70 91 100 82 69 77 148 228 267 352 64 82 56 354 342 44 73 240 303 263 161 202 209 226 232 248 281 263 73 60 44 39 25 44 69 92 228 251 249 236 226 235 238 233 232 254 270 277 279 284 289 293 294 296 296 295 293 290 288 283 281 279 277 273 268 265 258 253 258 265 273 277 283 285 298 312 329 11 53 75 91 99 104 101 105 105 105 106 106 108 115 124 130 187 243 226 187 139 130 147 172 174 166 159 162 163 176 176 181 192 198 200 198 192 183 175 165 163 165 166 168 163 172 184 204 217 221 219 218 215 219 221 219 212 204 202 204 205 202 194 187 181 181 191 201 209 222 228 228 228 225 53 61 58 54 49 35 14 20 53 83 59 29 348 348 20 72 74 50 335 319 320 342 35 60 29 4 342 358 44 45 40 54 79 78 29 313 309 349 13 10 342 332 322 317 337 12 34 16 349 329 317 295 301 326 12 3 351 330 317 298 325 22 22 291 285 283 352 80 91 303 291 292 299 313 7 64 128 184 228 336 357 16 29 12 5 358 4 25 53 70 75 64 33 7 326 345 9 44 59 80 120 124 41 53 92 141 211 226 212 231 243 258 251 303 14 44 51 44 35 22 14 44 73 184 226 232 251 260 269 275 257 243 232 245 261 278 284 292 295 298 298 299 301 300 298 294 289 285 281 279 275 271 268 264 256 243 243 250 257 262 266 269 280 294 321 14 56 80 100 112 118 113 114 108 106 113 124 141 158 176 201 216 222 218 211 183 183 192 205 198 189 175 175 175 182 187 192 203 208 211 211 205 190 182 171 172 172 177 181 181 184 191 208 216 223 221 219 216 223 228 231 223 213 207 198 188 181 174 166 169 177 194 205 214 223 230 235 235 225 48 53 60 67 67 44 16 357 44 64 51 20 339 348 29 77 91 73 291 306 342 44 75 77 51 358 338 349 359 14 20 92 118 122 157 215 183 107 36 355 331 325 320 320 322 349 66 5 328 310 307 298 298 354 25 4 329 307 293 278 303 102 187 234 253 260 107 100 106 138 262 279 284 298 329 56 92 108 120 124 102 92 83 69 336 313 313 329 56 75 67 51 16 349 318 342 25 53 44 64 120 120 107 80 92 93 240 258 253 243 269 312 348 29 51 39 33 16 9 9 31 64 211 232 253 269 304 312 306 295 276 264 254 255 264 279 289 294 298 302 301 303 304 304 302 298 294 290 286 282 278 275 270 262 253 238 223 225 234 241 246 252 259 278 309 303 263 187 172 156 141 133 129 129 141 168 187 191 197 200 209 216 216 212 207 200 204 212 213 207 196 181 186 195 203 205 204 205 209 212 218 218 213 200 193 192 195 198 198 198 197 199 205 210 215 214 214 220 230 237 238 228 214 191 176 166 163 168 174 181 191 201 211 218 228 238 243 243 231 29 35 39 50 56 44 33 33 60 67 72 352 320 319 35 60 68 22 346 326 349 38 72 103 115 100 35 358 340 328 267 157 137 119 170 212 153 108 49 342 326 318 322 320 314 313 141 237 280 289 287 284 290 342 240 303 289 287 283 317 4 5 9 22 102 107 108 99 100 104 286 285 289 293 319 44 64 67 59 31 41 93 115 138 216 261 281 299 64 83 69 43 309 293 289 321 53 67 38 9 354 95 151 147 130 124 290 277 269 261 293 335 358 44 60 60 356 319 301 311 325 240 281 286 301 324 342 342 313 285 277 276 276 277 283 289 293 298 303 308 310 310 312 311 311 307 304 301 295 289 287 280 272 258 247 233 223 222 222 229 230 236 248 268 281 253 243 225 210 193 176 170 176 181 196 207 214 212 210 210 221 228 228 216 211 208 211 211 211 197 184 181 191 204 217 213 208 207 210 220 225 229 232 225 222 220 220 216 215 211 207 204 203 203 202 203 207 217 227 231 228 209 181 169 165 173 181 187 190 195 202 207 213 223 230 242 246 245 231 38 22 22 33 33 33 39 44 50 38 356 294 298 320 51 61 50 18 346 326 340 12 49 83 122 137 138 148 281 278 255 141 104 82 303 243 196 166 184 275 278 277 287 297 302 292 253 215 259 273 280 268 193 148 226 243 262 281 301 340 349 343 346 358 33 72 100 115 119 141 269 283 288 291 321 53 38 22 5 358 357 357 64 128 151 267 301 318 24 84 107 187 243 243 266 14 59 64 53 329 304 284 202 172 144 172 226 262 269 267 56 38 22 22 38 69 41 281 289 329 357 357 326 319 319 326 326 313 275 265 266 279 291 302 303 298 297 300 309 313 319 319 318 317 315 311 309 308 304 300 294 286 276 262 250 240 229 221 210 201 192 187 303 278 259 242 231 223 216 207 199 198 204 210 214 219 223 219 216 216 223 231 235 227 223 222 220 216 200 188 178 187 201 210 215 213 207 200 206 215 225 230 235 233 233 230 230 227 223 217 209 206 199 195 190 195 200 208 216 219 204 181 166 166 178 188 195 198 200 203 208 217 221 228 235 245 249 245 230 67 39 35 29 29 36 48 48 17 349 334 332 332 6 60 91 99 243 277 301 326 7 33 44 24 352 193 187 216 243 237 187 141 185 234 221 214 189 221 251 243 232 221 279 294 293 274 249 248 258 269 124 113 342 269 265 262 279 299 321 321 322 325 342 22 53 104 138 127 144 237 275 283 291 22 64 39 6 342 334 337 344 358 35 82 64 20 358 31 58 84 240 268 266 73 64 64 82 92 352 320 313 306 251 183 192 212 247 248 263 72 51 25 349 357 43 111 93 354 16 25 20 312 294 278 268 260 257 254 253 255 267 278 291 293 296 295 300 307 316 317 317 317 315 313 312 310 309 307 304 298 292 284 270 261 251 243 230 192 144 115 64 279 261 252 242 231 218 213 214 213 208 211 217 220 223 225 221 221 219 225 229 231 230 227 225 221 217 195 184 186 199 209 215 213 207 197 196 203 211 217 221 225 230 232 228 227 225 219 211 202 196 192 189 188 194 200 210 215 213 189 175 167 178 188 199 201 203 202 210 217 223 227 231 235 243 247 247 228 72 69 72 72 64 72 80 80 20 327 318 329 345 12 64 118 162 200 278 311 11 38 39 25 5 349 342 64 120 128 102 243 232 221 210 187 166 113 313 289 265 225 211 261 290 292 284 269 251 253 251 120 107 266 278 266 262 274 287 299 304 310 317 331 356 43 92 111 97 82 352 289 298 304 352 77 77 293 277 268 309 335 337 7 59 75 56 39 29 33 35 309 284 303 80 84 84 91 92 31 335 318 298 278 243 216 202 228 303 43 56 64 44 342 358 10 37 35 25 16 24 22 258 262 255 235 236 241 248 253 256 263 273 278 281 283 289 294 300 308 311 312 313 312 312 312 310 309 306 304 299 292 286 279 273 269 263 237 167 138 184 236 259 258 255 242 228 212 207 210 214 213 213 215 222 227 225 223 219 222 224 227 228 227 225 221 219 214 200 195 197 206 213 217 210 202 193 197 202 210 210 211 213 221 223 221 217 214 209 199 192 185 185 188 195 201 210 219 221 220 194 183 183 190 198 200 203 203 204 213 218 225 230 233 235 238 241 235 221 120 141 128 111 106 106 91 91 113 313 314 317 325 342 9 64 101 64 329 326 356 64 75 64 29 348 326 336 148 151 202 232 236 232 210 172 155 161 309 293 274 238 216 221 269 288 296 291 291 294 352 73 124 260 269 273 269 268 289 298 302 300 294 281 263 102 93 80 75 73 309 287 300 310 326 64 120 161 211 228 113 73 11 357 35 75 77 69 354 309 284 243 240 73 64 77 91 83 80 64 290 269 258 253 255 342 44 44 35 35 40 50 51 24 8 7 17 11 7 345 309 268 261 262 263 251 245 250 256 260 266 273 275 277 283 288 292 296 300 303 306 308 309 311 312 311 310 308 308 305 302 295 291 287 287 279 276 243 211 201 220 234 249 253 256 243 222 209 211 210 211 209 209 213 220 227 229 227 227 227 230 232 229 227 223 219 217 210 206 204 205 211 215 217 208 202 197 201 204 207 203 201 206 211 214 209 205 193 193 187 186 185 191 194 203 208 213 219 221 221 210 201 197 198 200 200 201 202 204 211 219 225 229 232 232 234 236 231 217 92 22 56 80 91 91 84 108 124 303 294 295 301 320 357 53 82 104 342 312 329 352 113 130 141 290 289 277 243 231 216 221 226 232 220 192 168 183 258 269 263 246 232 225 232 265 284 287 293 313 11 31 41 277 274 282 283 289 278 269 265 275 279 228 187 161 141 151 157 183 226 278 302 321 337 12 39 44 14 14 44 59 56 22 25 44 75 77 290 289 284 193 77 64 54 54 56 69 124 226 251 260 255 226 102 72 64 64 54 39 29 33 44 44 33 14 348 345 320 312 294 276 263 269 269 269 265 265 266 266 270 272 275 279 284 287 293 298 305 309 311 312 313 314 315 314 313 313 312 310 305 299 296 295 290 279 264 247 237 231 234 239 248 252 254 250 232 222 221 217 211 207 206 210 216 223 229 229 230 232 236 236 234 227 219 212 211 209 204 204 207 213 215 213 207 205 201 201 201 200 195 193 194 192 186 163 153 147 183 196 207 203 205 209 212 215 219 221 223 223 220 215 205 201 198 200 200 202 206 211 219 225 229 231 231 230 231 223 216 38 16 29 64 84 99 115 119 111 92 309 281 268 325 14 44 80 124 157 228 321 329 321 243 220 226 251 269 289 299 309 290 237 226 226 220 198 198 208 236 243 248 251 247 242 243 254 265 275 281 102 102 263 284 287 285 287 281 275 269 275 301 321 352 102 187 197 209 194 183 170 228 298 313 331 14 33 38 357 358 5 36 40 35 29 33 72 73 342 304 320 14 72 70 60 44 44 95 211 243 277 301 324 356 53 67 77 77 75 44 25 20 44 77 107 148 243 255 269 276 263 263 257 258 264 278 289 296 291 286 281 280 286 288 293 294 297 303 312 316 318 319 319 319 320 320 319 318 315 312 308 303 298 292 290 274 261 256 251 249 250 251 254 258 258 256 245 240 233 223 210 202 203 210 215 220 224 227 227 231 233 233 229 223 215 211 207 207 206 208 210 214 214 213 208 203 203 201 199 192 188 177 168 153 140 133 145 175 205 216 223 220 216 217 221 225 225 227 229 229 225 222 209 203 199 200 201 205 210 214 220 224 227 228 229 228 225 225 223 6 357 11 80 91 100 91 83 70 44 358 326 329 20 44 50 50 80 152 183 209 243 261 257 251 243 102 193 240 325 293 278 251 236 226 221 215 198 216 230 233 251 264 278 278 278 274 275 276 267 124 113 266 283 287 293 298 309 317 326 334 337 334 334 335 290 267 268 228 128 119 147 197 226 243 102 73 43 326 331 347 19 26 23 12 33 64 69 22 311 329 356 53 69 64 352 290 251 226 237 290 348 358 358 12 33 50 56 51 7 336 266 187 170 173 183 200 215 235 246 253 258 258 253 260 273 297 306 308 307 304 303 305 305 305 305 308 312 316 320 322 321 321 321 320 320 319 317 315 314 310 307 302 294 285 269 263 260 258 257 257 257 260 261 260 253 249 243 237 228 214 207 209 212 218 222 227 229 228 230 232 229 219 210 206 204 206 210 209 211 214 214 215 213 209 204 202 199 195 187 177 165 155 145 145 159 177 197 210 219 223 219 217 217 219 223 229 231 231 232 229 225 215 205 200 201 203 208 211 215 220 222 223 223 223 223 225 228 230 348 311 303 130 91 79 64 77 84 56 311 295 311 56 83 59 7 320 281 234 218 226 248 293 357 39 64 107 141 211 243 269 269 255 247 235 230 233 236 246 247 258 298 321 327 328 322 310 300 293 266 187 255 269 280 298 324 358 358 358 342 325 317 329 334 342 342 331 348 38 74 72 41 281 303 64 92 113 193 293 319 358 5 5 358 38 56 64 31 329 339 9 44 80 113 243 268 279 266 102 77 38 22 5 5 12 35 39 20 319 289 255 185 197 204 200 198 196 226 246 256 257 257 258 262 269 287 300 309 311 314 319 318 316 314 314 314 315 316 317 317 318 317 317 316 315 315 314 313 313 312 311 306 299 288 276 264 263 262 261 261 262 261 260 259 252 251 246 243 235 225 215 216 217 223 227 230 232 233 235 231 223 205 199 197 206 210 213 213 216 218 215 213 212 209 205 203 199 192 184 178 171 171 171 175 187 195 202 208 216 223 223 223 221 221 223 227 231 236 234 232 227 216 206 201 201 205 210 212 216 218 219 223 222 222 223 228 231 237 311 306 299 95 91 91 83 167 194 208 226 236 202 130 122 147 216 253 263 262 268 263 240 352 357 7 20 31 41 240 211 260 269 269 269 262 262 262 262 269 284 22 7 359 346 337 325 314 306 298 281 251 255 269 284 311 356 33 16 348 298 313 328 353 359 359 348 348 353 14 21 358 331 324 351 39 75 100 124 157 161 41 342 342 11 51 60 60 20 348 342 357 43 120 141 228 299 320 345 20 38 38 25 7 6 14 22 16 345 312 306 304 309 258 236 226 196 182 205 236 251 253 260 266 276 286 297 306 310 313 316 318 318 316 314 313 312 313 313 314 315 314 314 311 311 310 311 311 311 312 311 310 306 301 291 282 270 265 264 261 259 259 258 260 258 255 252 247 245 240 233 225 223 225 229 232 236 238 236 234 227 216 204 202 205 209 212 212 213 214 217 215 213 210 207 205 205 200 195 190 186 181 183 186 188 195 198 204 210 220 232 240 240 235 232 231 236 237 240 238 232 227 218 205 198 200 203 208 213 218 217 218 223 225 228 230 232 236 241 240 352 14 59 77 92 187 240 247 248 228 148 113 130 162 202 218 232 243 263 294 354 44 64 14 335 339 339 345 336 284 258 277 284 306 312 326 339 349 357 20 44 29 344 327 310 300 295 300 305 298 293 299 321 342 9 29 35 14 309 299 9 25 26 5 349 328 349 5 10 352 317 304 317 353 41 63 64 64 69 69 35 358 348 9 51 60 56 357 326 318 320 352 73 73 56 44 35 20 7 357 357 14 29 25 10 358 337 334 324 322 313 294 269 247 221 190 182 202 243 258 261 270 282 296 307 314 314 316 316 314 315 313 310 309 308 309 310 312 313 315 314 312 310 308 307 307 307 306 307 307 306 303 300 292 286 279 273 268 265 261 257 257 257 259 255 251 248 242 240 235 229 227 227 232 235 238 239 240 234 225 217 210 207 210 213 214 213 211 213 215 213 213 210 208 207 203 199 195 188 186 183 183 186 193 194 196 199 212 229 243 248 251 247 242 236 237 237 237 237 233 221 208 198 192 191 195 206 213 216 216 215 221 227 234 237 239 239 241 131 111 92 92 92 113 226 248 258 267 342 187 151 147 202 247 257 256 257 278 326 5 19 25 6 342 324 322 322 322 308 298 313 335 25 29 23 8 3 8 15 12 357 313 297 292 292 291 298 300 306 321 356 358 6 6 20 14 342 303 342 73 56 43 290 281 281 64 56 11 298 287 287 318 5 48 60 56 41 31 53 36 10 351 6 38 64 59 354 304 294 306 335 7 44 49 54 67 69 342 309 311 356 33 45 19 351 322 326 326 326 313 300 281 262 231 205 201 209 238 256 270 283 296 305 313 317 317 317 316 313 312 310 307 307 307 307 308 310 312 312 312 312 310 307 305 304 302 301 301 301 300 299 297 292 287 282 278 274 270 265 261 258 257 255 254 248 242 238 236 233 229 229 229 234 237 239 240 239 234 227 217 211 210 213 215 215 213 211 213 215 214 213 212 212 208 200 193 186 183 181 183 184 184 188 189 191 196 212 229 248 252 256 251 243 233 230 230 230 228 220 210 201 193 190 189 190 203 211 212 211 209 215 223 232 237 239 240 243 118 112 119 138 152 173 183 197 197 185 184 182 182 173 157 248 274 264 251 228 44 35 30 14 358 334 322 326 329 329 326 337 358 33 45 45 30 13 7 2 359 351 338 319 312 306 309 307 305 308 319 345 9 7 358 348 342 325 263 243 202 184 167 161 211 290 325 80 53 357 301 300 313 348 33 61 66 64 44 44 53 56 11 313 348 29 82 73 290 279 278 293 345 16 45 45 45 64 80 102 266 228 141 120 107 41 299 294 298 308 313 309 302 300 287 263 225 214 217 240 262 279 288 298 305 310 314 313 312 312 310 310 309 308 307 305 305 305 307 309 311 311 310 309 308 306 303 301 300 302 300 299 296 292 287 283 280 277 275 271 266 261 259 256 253 250 246 240 236 231 227 225 227 230 235 238 242 242 241 236 227 219 213 213 215 215 215 213 212 211 213 215 215 212 209 204 193 181 175 172 175 181 181 181 185 185 190 195 209 225 246 252 256 250 242 225 218 214 214 212 205 202 196 195 194 195 199 205 210 212 210 206 210 219 228 233 238 242 245 70 75 91 101 124 124 115 113 113 107 120 120 92 113 167 226 247 249 218 139 83 58 41 12 344 318 322 334 338 343 342 4 26 41 41 41 26 10 353 349 343 330 322 317 316 314 314 317 317 328 342 349 357 11 356 357 345 329 321 309 266 211 184 183 184 185 148 77 73 352 294 313 337 14 29 44 50 56 60 67 75 92 263 289 320 31 99 128 226 260 267 22 44 51 49 45 41 56 44 22 309 240 130 124 120 193 267 279 268 258 258 278 283 295 295 292 264 241 225 239 261 279 296 306 310 313 316 314 313 312 311 311 310 310 309 308 308 309 309 311 311 309 308 307 308 308 308 306 305 305 304 302 299 294 289 283 279 276 274 270 264 260 257 256 254 251 246 240 232 225 220 219 223 229 236 241 245 245 242 233 228 221 216 214 215 215 215 214 211 212 212 213 213 208 200 190 178 171 168 172 178 181 181 184 190 194 201 209 219 229 238 243 247 240 230 200 192 198 208 214 213 202 196 199 206 212 216 215 215 215 215 214 215 219 227 231 236 239 244 33 29 39 44 49 54 48 37 36 33 28 11 358 331 281 226 226 209 141 101 78 48 26 358 326 306 324 337 353 358 10 30 35 39 28 15 352 346 331 331 327 323 320 321 325 320 320 317 334 349 346 347 344 348 356 357 348 334 324 319 311 293 284 211 170 162 124 101 101 95 263 299 342 39 38 25 6 14 33 38 31 309 299 320 345 44 92 139 185 258 22 51 49 33 16 20 35 64 64 303 284 226 167 120 56 358 337 313 284 253 240 235 251 269 288 299 301 301 287 269 284 297 311 315 319 318 318 319 317 313 313 315 317 316 315 314 313 313 313 313 313 310 310 310 310 310 309 307 307 307 306 306 306 303 298 291 284 279 275 271 265 262 258 256 254 250 241 232 225 222 217 216 221 225 234 242 246 243 240 230 228 225 221 218 215 213 211 213 211 210 210 209 205 196 181 168 165 169 178 183 188 188 188 190 193 198 207 215 222 223 228 228 221 212 184 183 192 205 229 232 228 215 206 209 217 231 230 225 215 211 208 211 213 217 225 230 234 237 240 56 38 35 33 33 34 30 30 34 22 9 349 334 319 310 306 303 64 92 58 36 23 7 353 332 331 345 5 9 13 17 24 30 28 12 351 337 342 346 352 348 348 348 348 352 338 327 313 329 356 358 342 332 334 345 336 321 312 312 320 345 339 334 349 16 51 67 67 56 44 352 263 193 113 82 59 357 358 5 25 14 358 351 349 348 354 102 151 141 64 64 64 64 25 358 358 342 263 202 202 202 161 93 72 29 358 329 317 300 276 251 233 241 258 278 296 308 314 316 316 317 318 320 321 320 319 319 318 317 317 316 319 320 319 316 314 313 313 314 313 312 311 312 312 311 310 308 309 308 308 308 308 307 305 303 297 292 284 280 273 268 265 258 253 248 242 228 222 217 217 220 217 220 222 228 235 242 243 240 228 230 230 228 219 212 211 210 210 208 206 201 195 188 174 167 168 175 186 194 196 197 196 197 198 199 202 205 207 207 201 182 162 147 151 185 218 231 236 245 246 243 234 221 216 222 233 234 230 218 206 200 201 206 212 219 224 229 233 237 106 100 83 64 64 43 22 43 53 50 10 343 332 327 331 352 13 20 22 24 20 14 360 350 342 356 8 7 8 8 12 12 12 10 3 359 359 3 2 359 357 356 355 355 346 332 319 309 336 31 33 351 329 310 313 336 345 357 358 14 22 14 352 338 348 5 19 39 38 7 358 358 22 39 64 64 44 9 22 31 25 12 351 320 284 266 193 93 69 56 56 64 82 77 44 342 301 269 234 170 124 101 101 101 93 290 284 298 300 287 274 257 250 266 286 300 309 316 319 320 319 319 317 318 318 319 318 317 318 318 318 318 317 315 313 311 311 312 313 313 313 313 313 313 313 313 312 310 310 308 308 307 306 306 304 300 296 290 283 279 272 267 260 249 240 231 225 220 222 222 225 225 222 225 229 231 239 240 240 236 236 238 235 228 221 216 211 206 202 196 186 178 170 170 178 189 197 201 204 202 200 198 200 201 197 194 185 171 147 132 124 127 144 185 258 263 265 262 257 254 251 245 231 222 220 225 231 233 222 208 195 197 202 208 216 222 225 229 233 91 106 108 111 124 240 342 102 107 111 92 356 313 327 343 17 25 20 6 4 7 2 346 338 337 344 351 356 359 2 8 11 7 359 353 348 359 3 10 356 346 343 348 4 340 329 321 324 358 22 22 358 331 313 344 5 14 14 19 33 45 60 31 329 318 334 7 44 51 29 25 29 31 31 35 35 44 53 39 31 19 348 301 268 243 93 69 64 50 35 14 240 167 152 184 251 261 251 216 115 104 99 147 183 192 208 231 264 277 282 282 279 282 295 304 309 314 317 317 317 316 316 315 317 318 317 317 316 317 316 316 316 313 310 309 310 310 311 312 314 314 314 314 315 315 316 315 314 313 311 310 309 307 307 304 301 297 292 287 282 278 270 259 250 238 229 222 218 222 230 238 240 240 240 233 235 240 242 245 245 243 243 243 240 231 220 211 202 192 181 178 178 178 189 197 209 211 210 207 201 199 196 195 191 181 160 137 130 126 129 137 143 167 267 289 286 285 278 267 260 255 247 236 225 220 222 224 229 220 212 197 196 197 204 210 218 221 225 229 60 85 96 99 80 31 24 44 77 115 138 162 209 281 356 58 79 82 298 306 311 299 294 301 312 322 335 340 346 352 359 5 358 346 330 330 342 4 15 351 339 328 337 7 342 324 310 322 343 4 5 351 344 351 21 24 24 19 19 24 23 38 77 64 356 345 357 44 64 67 56 50 49 22 358 344 14 44 35 22 342 319 298 321 35 58 60 69 64 309 293 299 263 148 226 248 247 226 167 115 124 147 204 215 211 221 233 251 264 277 289 297 305 311 315 316 317 318 319 319 318 318 319 320 319 317 317 316 314 313 312 309 308 305 305 306 307 309 310 312 314 315 316 316 317 316 316 316 316 315 315 315 312 309 306 300 296 293 295 292 283 273 261 254 238 226 221 226 235 243 246 246 246 243 243 241 243 245 245 245 242 242 242 240 235 222 210 196 186 181 187 194 202 206 211 214 214 210 202 193 185 177 168 153 140 130 125 130 133 137 141 152 228 286 293 289 286 283 278 272 259 246 234 227 218 214 214 220 216 211 203 201 200 204 209 213 217 221 226 56 61 68 74 56 25 6 16 35 69 92 126 131 120 115 115 138 184 226 237 187 139 172 194 243 289 314 319 325 327 322 304 293 286 293 304 326 7 16 349 329 320 326 326 321 291 287 289 304 9 358 358 358 15 34 41 41 36 26 19 8 4 358 9 11 357 16 33 50 49 40 40 39 44 16 351 358 20 44 354 304 298 311 14 64 70 64 73 263 325 342 358 358 349 313 289 262 212 173 149 162 194 208 215 221 248 258 256 270 282 299 308 315 318 319 320 320 320 320 320 319 319 320 321 321 321 319 317 314 313 310 306 305 303 301 302 303 306 308 311 312 314 315 316 316 316 316 316 316 316 316 316 315 310 306 302 298 294 293 289 281 274 264 251 240 231 226 230 236 245 249 247 248 248 248 248 247 247 247 243 242 242 241 236 229 221 210 201 197 197 201 207 212 215 216 211 205 195 187 171 157 149 139 134 129 129 129 128 130 133 132 130 266 283 281 280 283 282 280 277 264 250 236 223 212 208 208 206 207 208 210 208 206 208 210 210 213 219 225